> 文章列表 > Qt 学习笔记 5.connect()

Qt 学习笔记 5.connect()

Qt 学习笔记 5.connect()

1. qt 中哪些控件可以使用 connect

Qt 中,可以使用 connect() 函数来连接信号和槽,实现对象间的通信。

可以使用 connect() 函数连接的对象包括 QWidgetQObject 及其 子类,例如 QPushButtonQLineEditQLabelQComboBoxQSpinBox 等等。

以下是可以使用 connect() 函数连接信号和槽的一些常见控件和对象:

  • QWidget 以及 QWidget 的所有子类(例如 QPushButtonQLabelQLineEdit 等)
  • QObject 以及 QObject 的所有子类
  • QButtonGroup
  • QAbstractButton 及其子类
  • QComboBox 及其子类
  • QDial
  • QAbstractSlider 及其子类
  • QAbstractSpinBox 及其子类
  • QCalendarWidget
  • QDateTimeEdit
  • QLCDNumber
  • QGraphicsItem 及其子类
  • QStandardItemModel 及其子类
  • QSortFilterProxyModel
  • QSqlTableModel
  • QSqlQueryModel
  • QStandardItem 及其子类
  • QTreeWidgetItem 及其子类
  • QMenuQMenuBar 以及 QAction
  • 需要注意的是,有些控件可能并没有 自己的信号,但是它们可以使用父类 QWidgetQObject 的信号来实现连接,例如 QLCDNumber 控件可以使用 QSpinBoxvalueChanged() 信号来连接。
  • 另外,一些 不可见的类,例如 QNetworkAccessManagerQTimerQThreadPool 等也可以使用 connect() 函数连接信号和槽来实现对象间的通信。

总之,只要是 QObjectQWidget 的子类,它们就可以使用 connect() 函数连接信号和槽。当然,有些类没有预先定义的信号,需要自己定义,并使用 connect() 函数连接自定义信号和槽。