Qt Custom Slots
-
16-02-2021 - |
Question
Why doesn't the slot Reset() work? I want the button "reset" to reset the value of the sider to zero.
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()) );
Solution
Try adding Q_OBJECT
to the private section of the class. This will cause moc
to create the meta-data necessary for signals and slots to work. See http://doc.qt.io/archives/qt-4.7/qobject.html#Q_OBJECT
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow