我使用 qt Designer 创建了一个漂亮的工具栏,并用一些动作填充它。
我尝试通过点击编辑> 通过qt designer 直观地将操作连接到插槽信号和插槽。这 DID NOT WORK 因为我找不到任何QAction信号。
问题。
有没有办法将QAction SIGNAL(triggered())连接到QT设计器中的插槽?
请帮忙。
的 PS:
我目前被迫通过代码连接:
QObject::connect(myAction, SIGNAL(triggered()),this, SLOT(myActionWasTriggered()))
但是我很懒,我希望使用qt designer进行连接。
答案 0 :(得分:4)
在Docs Designer Connection Mode中查看...如何在设计器中自动连接
答案 1 :(得分:3)
“信号/插槽编辑器”对接面板(与视图 - >信号/插槽编辑器一起切换)。 您可以在那里连接您的行动。 您可能还需要通过“更改信号/插槽”表单上下文菜单添加自定义插槽。
为了节省一些工作,请使用自动连接功能(请参阅QMetaObject::connectSlotsByName)。基本上,所有以on_objectName_signalName
特定模式命名的插槽都将自动连接。
答案 2 :(得分:2)
使用“动作编辑器”面板。你可以在“Signals& Slots editor”附近找到它。
答案 3 :(得分:-1)
如果您有菜单,请根据菜单命名您的操作对象,假设您有:
File Edit View Tools Help
你有5个菜单栏,
所以你有一套action_x,x是一个数字。请根据你的菜单命名你的x。
更多解释:
File = 1
Edit = 2
View = 3
Tools = 4
Help = 5
并假设:
File---> Open ..Close
Edit---> find...replace
View---> ZoomIn ... ZoomOut
Tools--->calender... prefrences
help---> help... about
你有5x2 = 10,你有10个动作,请管理如:
action_11 == File>Open
action_12 == File>close
action_21 == Edit>find
and so on..
以上的管理类型使您的编码变得轻松.....