Qt自定义插槽

Qt Custom Slots

本文关键字:插槽 自定义 Qt      更新时间:2023-10-16

为什么插槽Reset()不起作用?我想让"reset"按钮将边线的值重置为零。

class MySlider : public QSlider
{
   public:
    MySlider(Qt::Orientation orientation, QWidget *parent = 0) : QSlider(orientation parent){}
   public slots:
   void Reset()
   {
   this->setValue(0);
   }
};
//it doesnt work when i try this
MySlider * Slider = new MySlider(Qt::Horizontal, this);
QPushButton *Reset = new QPushButton(tr("Reset"), this);
connect(Reset, SIGNAL(clicked()), Slider, SLOT(Reset()) );

尝试将Q_OBJECT添加到类的私有部分。这将导致moc创建信号和插槽工作所需的元数据。见http://doc.qt.io/archives/qt - 4.7 -/- qobject.html # Q_OBJECT