saveload.h:
#ifndef SAVELOAD_H
#define SAVELOAD_H
#include <QDialog>
class QPushButton;
class SLDialog : public QDialog {
Q_OBJECT
public:
SLDialog(QWidget *parent = 0);
public slots:
void Func();
private:
QPushButton *leftButton;
QPushButton *rightButton;
};
#endif
saveload.cpp:
#include <QtGui>
#include "saveload.h"
SLDialog::SLDialog(QWidget *parent) : QDialog(parent)
{
QPushButton *leftButton = new QPushButton("left");
QPushButton *rightButton = new QPushButton("right");
connect(rightButton, SIGNAL(clicked()), this, SLOT(Func()));
QHBoxLayout *layout = new QHBoxLayout;
layout->addWidget(leftButton);
layout->addWidget(rightButton);
setLayout(layout);
}
void SLDialog::Func()
{
leftButton->setEnabled(false);
}
main.cpp (чисто вывод):
#include <QApplication>
#include "saveload.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
SLDialog *dialog = new SLDialog;
dialog->show();
return(app.exec());
}
Как по сигналу с помощью слотов изменить "включенность" кнопки? Вопрос к saveload.cpp в секции slots, в коде Func() (все ли правильно?). Компилируется, выполняется с Segmentation fault.