未连接的 Qt 插槽被调用
Posted
技术标签:
【中文标题】未连接的 Qt 插槽被调用【英文标题】:Qt slot not connected is called 【发布时间】:2014-10-07 13:23:43 【问题描述】:调用未连接的插槽 我在 mi ClassA.ui 上有一个名为 btnStart 的 QPushButton
在头文件ClassA.h中:
private slots:
void on_btnQuit_clicked();
当我单击 btnStart 按钮时,在插槽 on_btnQuit_clicked() 上输入,但我没有连接任何东西。
classA.h
class classA : public QDialog
Q_OBJECT
public:
classA( QWidget *parent = 0 );
~classA();
private:
Ui::classA* m_ui;
private slots:
void on_btnStart_clicked();
;
classA.cpp
#include "ClassA.h"
#include "ui_ClassA.h"
ClassA::ClassA( QWidget *parent ):
QDialog( parent ),
m_ui( new Ui::classA )
m_ui->setupUi( this );
ClassA::~ClassA()
SWT_DENULL( m_ui );
void ClassA::on_btnStart_clicked()
//here
classA.ui
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>classA</class>
<widget class="QDialog" name="classA">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>667</width>
<height>433</height>
</rect>
</property>
<property name="windowTitle">
<string>title</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QPushButton" name="btnStart">
<property name="text">
<string>Start title</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<layoutdefault spacing="6" margin="11"/>
<resources/>
<connections/>
</ui>
【问题讨论】:
您可能在 QML 文件中连接了它。 【参考方案1】:Qt 有一个自动连接功能,可以连接如下命名的插槽:on_UIELEMENTNAME_SIGNALNAME(SIGNAL_PARAMS)
与相应的信号,请参阅文档here
【讨论】:
以上是关于未连接的 Qt 插槽被调用的主要内容,如果未能解决你的问题,请参考以下文章