几天前开始学习Qt的基础知识,我的问题涉及以下内容: - Qt设计师(UI) - 推广课程
使用Qt设计器(或者我认为没有它),“捕捉信号”或创建事件,我们可以做一些像这样的创建私人插槽:“on_ [widget_name] _ [signal_name]。”以下代码有效,我在这里没有问题:
#include "custom.h"
#include "ui_custom.h"
#include <QDebug>
CustomWidget::CustomWidget(QWidget *parent) :
QWidget(parent),
ui(new Ui::CustomWidget)
{
ui->setupUi(this);
// ui->horizontalLayout->setContentsMargins(0,0,0,0);
// ui->horizontalLayout->setAlignment(Qt::AlignLeft);
}
CustomWidget::~CustomWidget()
{
delete ui;
}
void CustomWidget::on_widthInput_valueChanged(int value){
qDebug() << "test";
}
我的问题是有没有办法在提升的课程中定义相同的on_ [widget] _ [signal]事件?
换句话说,假装有一个GCWidget :: GCWidget(QWidget * parent):QWidget(parent),但它只是来自Qt Designer的提升类。它具有相同的void函数on_widthInput_valueChanged但不幸的是,“test”将不会输出。
我想这样做的原因很明显,我不希望我的所有代码都在我的UI的一个父类中被污染。我读到提升类的想法是让我有可能分离这些类,但是当我创建相同的“on _...”函数时,它不起作用。有什么想法吗?