Qt4 中的信号和槽

Signals and Slots in Qt4

我正在尝试在 Qt4 中创建一个信号和槽,我对 Qt 还很陌生。据我对 Qt5 的了解,它只是自动创建的,而在 Qt4 中似乎并非如此。当用户单击 UI.= 底部菜单栏中的选项时,我正在尝试创建一个操作。= 我看到屏幕底部有一个 Signal/Slot 编辑器选项 "Sender"、"Signal"、"Receiver" 和 "Slot"。我不完全确定如何使用此功能。感谢您的帮助。

基本上你需要连接你的信号和插槽

connect(ui->button1, SIGNAL(clicked()), this, SLOT(yourSlot()));

并且在这个 link 中有关于信号和槽的很好的例子:signals and slots in qt

你好像误会了

Qt 5 的不同之处在于它提供了新的语法来建立连接。

连接是"automatic"当你不指定连接类型时,即直接,排队等,默认是自动的,这使得Qt检查对象的线程所有权和select适当的连接类型。

连接必须在代码中显式建立,或者使用 UI 编辑器建立,虽然后者在某些情况下可以节省您的输入时间,但通常您最终建立的大部分连接都是在代码中显式,所以你最好学习如何去做,因为 UI 编辑器只能在少数极端情况下帮助你。我没有真正使用过 UI 编辑器进行连接,并且在几年前尝试过一两次,但我认为的限制是你只能在 UI 元素和信号和槽之间建立连接小部件。

考虑到信号和槽连接不仅仅是一件 UI 事情,它是 Qt 的核心原则,UI 只是它的众多用途之一。