Qt 5.10 Book Examples
main.cpp
Go to the documentation of this file.
1 // ======================================================================
2 // main.cpp
3 // ======================================================================
4 // This file is a part of the book
5 // "Qt 5.10 Professional programming with C++"
6 // http://qt-book.com
7 // ======================================================================
8 // Copyright (c) 2017 by Max Schlee
9 // ======================================================================
10 
11 #include <QtWidgets>
12 
13 // ======================================================================
14 class MyWidget : public QWidget {
15 private:
16  QLabel* m_plblToolTip;
17 
18 protected:
19  virtual bool event(QEvent* pe)
20  {
21  if (pe->type() == QEvent::ToolTip) {
22  QHelpEvent* peHelp = static_cast<QHelpEvent*>(pe);
23  m_plblToolTip->move(peHelp->globalPos());
24  m_plblToolTip->setText(toolTip());
25  m_plblToolTip->show();
26  QTimer::singleShot(3000, m_plblToolTip, SLOT(hide()));
27 
28  return true;
29  }
30 
31  return QWidget::event(pe);
32  }
33 
34 public:
35  MyWidget(QWidget* pwgt = 0) : QWidget(pwgt)
36  {
37  m_plblToolTip = new QLabel;
38  m_plblToolTip->setWindowFlags(Qt::ToolTip);
39  }
40 };
41 
42 // ----------------------------------------------------------------------
43 int main(int argc, char** argv)
44 {
45  QApplication app(argc, argv);
46 
47  MyWidget mw;
48  mw.setFixedSize(70, 70);
49  mw.setToolTip("<H1>My Tool Tip</H1>");
50  mw.show();
51 
52  return app.exec();
53 }
54 
virtual bool event(QEvent *pe)
Definition: main.cpp:19
int main(int argc, char **argv)
Definition: main.cpp:15
MyWidget(QWidget *pwgt=0)
Definition: main.cpp:35