我使用的是基于 Qt 5.3.2 的 Qt Creator 3.2.1
在设计器中,您可以右键单击按钮并选择“转到插槽...”。将打开一个对话框,允许您选择一个插槽...例如 Clicked()
。
然后您将收到自动生成的方法
void MyClass::on_Button_clicked()
{}
但我使用的代码风格应将方法命名为 onButtonClicked()
。
如何更改默认的代码生成模板以满足我的需求?
最佳答案
Qt Designer 生成的 UI 支持名为 Automatic Connections 的功能。这将根据给定的命名约定自动连接信号和槽。这是
on_{Sender Object Name}_{Signal}
UI 文件中具有此签名和匹配的 Widget/Signal 的每个方法都会自动连接为插槽。
此机制在 Qt 中是硬编码的,您无法更改它。
但是,您可以在设计器中手动连接信号/槽:
- 转到信号/插槽 View (快捷键 F4)并拖放对象以选择信号和插槽
- 或打开信号/插槽编辑器(通常位于右下区域)并通过输入发送方、信号、接收方和插槽来添加连接
通过这些方法,您可以选择任意名称的插槽
更新:
当使用带有 QtDesigner 不知道的您自己的信号/槽的自定义小部件时,您可以在上面提到的信号/槽拖放方法中添加它们。只需单击弹出编辑器中的“更改...”按钮,然后添加信号/槽的签名。
您必须确保实例化 UI 的具体类实际上具有这些信号/槽。
这仅适用于 UI 的根小部件或占位符小部件
关于c++ - Qt 创建者。更改插槽的代码生成模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28987152/