Skip to main content

PyQt QWidget as a tooltip

Project description

pyqt-tooltip-widget

PyQt QWidget as a tooltip

Requirements

  • PyQt5 >= 5.8

Setup

python -m pip install pyqt-tooltip-widget

Detailed Description

This is QWidget which is activated like tooltip. When mouse cursor enters to the widget, ToolTipWidget pops up at the bottom left of the widget. Leave from the widget tooltip will be disappeared.

I made it work by catching QEnterEvent and QLeaveEvent of widget.

ToolTipWidget inherits QWidget, so you can decorate it just like QWidget.

Usage

Just make instance of it like self.toolTip = ToolTipWidget(yourWidget). yourWidget argument is the widget which you want to set tooltip of. Instance should be class variable.

Method Overview

  • setStillOpenWhenCursorLeaveFromToolTipWidget(f: bool) - Tooltip will be kept showing when cursor is inside the tooltip. (this is disabled by default)

  • isStillOpenWhenCursorLeaveFromToolTipWidget() -> bool

Example

Code Sample

from PyQt5.QtWidgets import QWidget, QMainWindow, QHBoxLayout, QPushButton, QApplication, QVBoxLayout

from pyqt_date_table_widget import DateTableWidget

from pyqt_tooltip_widget import ToolTipWidget





class MainWindow(QMainWindow):

    def __init__(self):

        super().__init__()

        self.__initUi()



    def __initUi(self):

        btn = QPushButton('Show Date Table Widget')

        lay = QHBoxLayout()

        lay.addWidget(btn)



        mainWidget = QWidget()

        mainWidget.setLayout(lay)



        ### Make tooltip start ###

        dateTableWidget = DateTableWidget() # https://github.com/yjg30737/pyqt-date-table-widget.git

        lay = QVBoxLayout()

        lay.addWidget(dateTableWidget)

        lay.setContentsMargins(0, 0, 0, 0)



        self.__tooltip = ToolTipWidget(btn)

        self.__tooltip.setFixedSize(200, 200)

        self.__tooltip.setLayout(lay)

        ### Make tooltip end ###



        self.setCentralWidget(mainWidget)





if __name__ == "__main__":

    import sys



    app = QApplication(sys.argv)

    example = MainWindow()

    example.show()

    app.exec_()

Result

image

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyqt-tooltip-widget-0.0.1.tar.gz (3.4 kB view hashes)

Uploaded source

Built Distribution

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page