[gelöst] eigene Slots / dialog mit auto-connect
Verfasst: 6. Mai 2006 14:53
Hi.
Ich weiss das Thema kommt öfters vor, aber ich habe in den Threads keine Lösung gefunden.
Ich habe einen Dialog mit dem Designer erstellt und dann eine entsprechende Klasse von QDialog abgeleitet.
(wie in http://qtforum.de/forum/viewtopic.php?t=1775 beschrieben)
Den Header für das ui file habe ich von uic generieren lassen.
Das alles lässt sich auch kompilieren, aber das auto-connect scheint nicht zu funktionieren... Weiß jemand wieso?
main.cpp
dialog.h
dialog.cpp
Im uic generierten Header muss man für das auto-connect nichts ändern, oder?
Vielen Dank
(QT4 Open Source)
Ich weiss das Thema kommt öfters vor, aber ich habe in den Threads keine Lösung gefunden.
Ich habe einen Dialog mit dem Designer erstellt und dann eine entsprechende Klasse von QDialog abgeleitet.
(wie in http://qtforum.de/forum/viewtopic.php?t=1775 beschrieben)
Den Header für das ui file habe ich von uic generieren lassen.
Das alles lässt sich auch kompilieren, aber das auto-connect scheint nicht zu funktionieren... Weiß jemand wieso?
main.cpp
Code: Alles auswählen
#include <qapplication.h>
#include "dialog.h"
int main(int argc, char *argv[]){
QApplication app(argc,argv);
QDialog *window = new QDialog;
GoToCellDialog mydialog;
mydialog.show();
return app.exec();
}Code: Alles auswählen
#ifndef DIALOG_H
#define DIALOG_H
#include "gotocelldialog.h"
class GoToCellDialog : public QDialog, private Ui::GoToCellDialog{
Q_OBJECT
public:
GoToCellDialog(QWidget *parent = 0);
~GoToCellDialog();
private slots:
void on_okButton_clicked();
};
#endifCode: Alles auswählen
#include "dialog.h"
#include <qlineedit.h>
#include <qpushbutton.h>
#include <qvalidator.h>
#include <qmessagebox.h>
GoToCellDialog::GoToCellDialog(QWidget *parent) : QDialog(parent)
{
setupUi(this);
QRegExp regExp("[A-Za-z][1-9][0-9]{0,2}");
lineEdit->setValidator(new QRegExpValidator(regExp,this));
}
GoToCellDialog::~GoToCellDialog(){
}
void GoToCellDialog::on_okButton_clicked(){
//QMessageBox::information(this, tr("Testmeldung"), tr("Testbla"), QMessageBox::Cancel);
okButton->setEnabled(lineEdit->hasAcceptableInput());
}Vielen Dank
(QT4 Open Source)