之前已经看过关于“stackoverflow”论坛的现有讨论,关于在正在设计的应用程序下设计和管理菜单和操作。在Qt Creator下开发(参见“如何在Qt Creator中连接菜单点击操作?”:How to connect menu click with action in Qt Creator?),我担心我对工具栏中的操作按钮有同样的疑问我正在尝试创建&安培;填充Qt创建者......
所以,我们走吧!
(1)我在动作编辑器中创建了至少一个动作...... (2)我将该动作拖放到工具栏
(步骤1和2都没问题,这些都没有困难,虽然这对我来说是一种非常不寻常的做法,因为其他UIM设计工具通常会提出相反的步骤2和1来做同样的事情,在我看来这更“自然”,但是,我知道,在我们的软件设计和编程世界中存在很多很多东西并且共存......)
=> (3)如何关联(连接)单击给定工具栏按钮时应该调用的函数(我将要实现)?
我的意思是,如何将给定动作(工具栏按钮)的“触发”信号连接到后面要实现的所需插槽(功能)......?是否可以使用Qt Creator中的“信号和插槽编辑器”进行此类操作,或者我必须在代码中的某处调用“connect()”才能实现此目的?非常感谢您提供完美初学者的任何帮助/建议/详细示例......
事实上,我想知道是否可以不自己调用connect()来满足这种需求,而且Qt Creator会自己创建插槽(函数)原型,或者我们必须创建这样的插槽(函数)原型Qt Creator可以将新的插槽(功能)原型考虑在内,并在这个通常/正常的UIM设计步骤/设计能力中真正帮助/帮助用户/开发者......?
最好的问候。
阿兰 - 皮埃尔
答案 0 :(得分:0)
如果QAction
是您的窗口的成员,那么正常
QMetaObject::connectSlotsByName(SettingsDialog);
...将使用适当命名的插槽方法连接操作的trigger
信号。这通常由使用设计器创建的GUI类自动调用。因此,如果操作名为actionSomething
,则在GUI类中创建一个带有以下签名的插槽:
void on_actionSomething_triggered();
...意味着您不必手动connect
信号和插槽。
此外,在操作编辑器中的操作上右键单击并选择“转到插槽...”将允许您为操作可能发出的任何信号创建插槽功能。 / p>