Qt 创造者。更改插槽的代码生成模板

Qt Creator. Change code generating template for slots

我正在使用基于 Qt 5.3.2 的 Qt Creator 3.2.1

在设计器中,您可以右键单击按钮并 select "Go to slot ..."。将打开一个对话框,允许您 select 一个插槽...例如 Clicked().
然后你会收到自动生成的方法

void MyClass::on_Button_clicked()
{}

但我使用的代码风格应将方法命名为 onButtonClicked()
如何更改默认代码生成模板以满足我的需求?

Qt Designer 生成的 UI 支持一项名为 Automatic Connections 的功能。这将根据给定的命名约定自动连接信号和插槽。这是

on_{Sender Object Name}_{Signal}

UI 文件中具有此签名并匹配 Widget/Signal 的每个方法都将自动连接为插槽。

此机制已硬编码在 Qt 中,您无法更改它。

但是,您可以在设计器中手动连接 signals/slots:

  • 要么转到 signal/slot 视图(快捷键 F4),然后 drag/drop 对象到 select 信号和插槽
  • 或打开Signal/Slot编辑器(通常在右下方区域)并通过输入发送者、信号、接收者和插槽来添加连接

通过这些方法,您可以选择任意名称的插槽

更新:
当使用 QtDesigner 不知道的带有您自己的 signals/slots 的自定义小部件时,您可以在上面提到的 Signal/Slot 拖放方法中添加它们。只需单击弹出编辑器中的“更改...”按钮,然后添加 signal/slot.

的签名

您必须确保实例化 UI 的具体 Class 实际上具有这些 signals/slots.

这仅适用于 UI 或占位符小部件的根小部件

我认为您无法更改默认名称。但是你可以做的是右键单击生成的插槽和 select 'Refactor->Convert to camel case'