...
Code Block |
---|
#ifndef DIALOG_H
#define DIALOG_H
#include <QDialog>
#include "ui_dialogi.h"
//luokka on tehty perimällä se QDialog ja käyttöliittymä luokista, kyseessä on siis moniperintä
class Dialogi : public QDialog, public Ui::Dialogi
{
Q_OBJECT
public:
Dialogi(QWidget *parent = 0);
private slots:
void on_lineEdit_textChanged();
};
#endif
|
Ja luokan toteutus tältä
Code Block |
---|
#include <QtGui>
#include "dialogi.h"
Dialogi::Dialogi(QWidget *parent) : QDialog(parent)
{
setupUi(this);
QRegExp regExp("[A-Za-z][1-9][0-9]{0,2}");//rajoitetaan sallittuja kirjaimia ja numeroita
lineEdit->setValidator(new QRegExpValidator(regExp, this));
connect(okButton, SIGNAL(clicked()), this, SLOT(accept()));
connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject()));
}
void Dialogi::on_lineEdit_textChanged()
{
okButton->setEnabled(lineEdit->hasAcceptableInput());
}
|
...
Code Block |
---|
#include <QApplication>
#include "dialogi.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
Dialogi *dialog = new Dialogi;
dialog->show();
return app.exec();
}
|