In diesem Thema hatte ich ja gefragt wie ich es schaffe ein LoginFenster anzuzeigen und davon dann in Abhängigkeit das MainWindow anzeigen zu lassen.
http://qtforum.de/forum/viewtopic.php?t=9115
Das ganze hat bisher echt super geklappt. Der Aufbau der "main.cpp" sieht dabei so aus:
Code: Alles auswählen
int main(int argc, char *argv[])
{
QApplication App(argc, argv);
App.setStyle(new QWindowsVistaStyle);
// #### LoginDialog wird erstellt #####
LoginDialog *w_login = new LoginDialog();
if(w_login->exec()) // Bool-Wert durch accept(); oder reject();
{
MainWindow *w = new MainWindow();
return App.exec(); // Eventloop
}
return 0;
}
Nun hab ich vom LoginDialog natürlich ein Passwort und einen Benuzternamen welcher vorher von einer Datenbank geprüft wurde und alle Daten sind ok. Von dem ganzen soll natürlich das MainWindow auch etwas haben, wie könnte man das also lösen?
Die Frage scheint mehr mit C++ selbst in Verbindung zu stehen aber mag einmal mehrere Lösungsmöglichkeiten hören.
Ich könnte bspw. Konstruktor MainWindow(); umbauen als MainWindow(Benutzername,Passwort); wenn ich mich nicht gänzlich irre.
Gibt es vll noch andere Möglichkeiten?
#2 Frage:
Hat wer von euch Erfahrungen gemacht im Bezug auf Verzögerungen? Ich hab im Logindialog eine progressbar welche durchlaufen soll bspw. int-Wert 50. Naja das ganze hab ich nun mit einer 20ms Pause in Kombi mit einer For-Schleife gelöst.
Code: Alles auswählen
...
class SleeperThread : public QThread
{
public:
static void msleep(unsigned long msecs)
{
QThread::msleep(msecs);
}
};...Code: Alles auswählen
for(int i=0;i<=50;i+=5)
{
SleeperThread::msleep(20);
this->progressBar->setValue(i);
}
Grüße