c++ - Qt C++ - 自定义插槽

标签 c++ qt

我正在尝试制作一些自定义插槽,但它提示自定义插槽不存在。

我用谷歌搜索过,但找不到任何有类似情况的东西。没有任何解决方案对我有用。

QObject::connect:没有这样的插槽 QSlider::setMinimum(int)

inkpuppet.cpp

#include "inkpuppet.h"
#include "ui_inkpuppet.h"
#include "aboutdialog.h"

#include <QDialog>
#include <QWidget>
#include <QtCore>
#include <QtGui>
#include <QButtonGroup>
#include <QSlider>

InkPuppet::InkPuppet(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::InkPuppet)
{
    ui->setupUi(this);
    connect(ui->lowerFrameBox, SIGNAL(valueChanged(int)), ui->timeSlider, SLOT(setMinimum(int)));
    connect(ui->upperFrameBox, SIGNAL(valueChanged(int)), ui->timeSlider, SLOT(setMaximum(int)));
    //connect(ui->lowerFrameBox, SIGNAL(valueChanged(int)), ui->timeSlider, SLOT(setRange(int,int)));
}

InkPuppet::~InkPuppet()
{
    delete ui;
}

void InkPuppet::on_aboutButton_clicked()
{

}

void InkPuppet::setMinimum(int value)
{
    ui->timeSlider->setMinimum(value);
}

void InkPuppet::setMaximum(int value)
{
    ui->timeSlider->setMaximum(value);
}

inkpuppet.h

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QtCore>
#include <QtGui>

#include "aboutdialog.h"

namespace Ui {
class InkPuppet;
}

class InkPuppet : public QWidget
{
    Q_OBJECT



public:
    explicit InkPuppet(QWidget *parent = 0);
    ~InkPuppet();

public slots:
    void on_aboutButton_clicked();
    void setMinimum(int value);
    void setMaximum(int value);

private:
    Ui::InkPuppet *ui;
    AboutDialog *aDialog;


};

#endif // WIDGET_H

最佳答案

您尝试将 ui->lowerFrameBox valueChanged(int) 信号与 ui->timeSlider 中的 setMinimum 插槽连接。然而,setMinimum 没有槽。您需要连接到 InkPuppet 中的插槽。

connect(ui->lowerFrameBox, SIGNAL(valueChanged(int)), 
 this, SLOT(setMinimum(int)));

关于c++ - Qt C++ - 自定义插槽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18428241/

相关文章:

项目中的 C++ 全局常量

javascript - Qt编程: How to use custom data type in QVariantMap?

c++ - 如何删除在 C++ 中作为构造函数参数传递的已分配变量

c++ - try and catch in C++ - 创建了多少个对象

使用 BinarySearch 算法的 C++ 函数(.bin 文件)

c++ - Visual Studio 中的 QRC 资源文件

qt - QML 项目的子列表深复制

java - QML Java - 从事件处理程序访问委托(delegate)项

c++ - 跨数据 block 的连续流计算

c++ - Qt 网格布局无法在滚动区域中正确显示