1. qt
中哪些控件可以使用 connect
在
Qt
中,可以使用connect()
函数来连接信号和槽,实现对象间的通信。
可以使用
connect()
函数连接的对象包括QWidget
、QObject
及其 子类,例如QPushButton
、QLineEdit
、QLabel
、QComboBox
、QSpinBox
等等。
以下是可以使用
connect()
函数连接信号和槽的一些常见控件和对象:
QWidget
以及QWidget
的所有子类(例如QPushButton
、QLabel
、QLineEdit
等)QObject
以及QObject
的所有子类QButtonGroup
QAbstractButton
及其子类QComboBox
及其子类QDial
QAbstractSlider
及其子类QAbstractSpinBox
及其子类QCalendarWidget
QDateTimeEdit
QLCDNumber
QGraphicsItem
及其子类QStandardItemModel
及其子类QSortFilterProxyModel
QSqlTableModel
QSqlQueryModel
QStandardItem
及其子类QTreeWidgetItem
及其子类QMenu
、QMenuBar
以及QAction
- 需要注意的是,有些控件可能并没有 自己的信号,但是它们可以使用父类
QWidget
或QObject
的信号来实现连接,例如QLCDNumber
控件可以使用QSpinBox
的valueChanged()
信号来连接。- 另外,一些 不可见的类,例如
QNetworkAccessManager
、QTimer
、QThreadPool
等也可以使用connect()
函数连接信号和槽来实现对象间的通信。
总之,只要是
QObject
或QWidget
的子类,它们就可以使用connect()
函数连接信号和槽。当然,有些类没有预先定义的信号,需要自己定义,并使用connect()
函数连接自定义信号和槽。