Seite 1 von 1

statusBar()->showMessage("test") geht nicht!

Verfasst: 8. August 2006 09:37
von darmstadt
Ich habe eine Klasse DialogNewGraphic die von QMainWindow erbt.

Code: Alles auswählen

class DialogNewGraphic : public QMainWindow
{
    Q_OBJECT

    ...	
};
In dieser Klasse habe ich folgende Methode:

Code: Alles auswählen

void DialogNewGraphic::test(){
	statusBar()->showMessage("test");
}
Ich kann eine Instanz der Klasse DialogNewGraphic einwandfrei benutzen. Wenn ich allerdings die methode test aufrufe:

Code: Alles auswählen

DialogNewGraphic* dlg = new DialogNewGraphic(); 
dlg->test();
stürtzt das Programm ab. Warum?

Viele Grüße

Verfasst: 8. August 2006 11:08
von bigmil
Hi darmstadt,

versuch mal diesen Ansatz:

Code: Alles auswählen

DialogNewGraphic* dlg = new DialogNewGraphic();
QStatusBar *bar = dlg->statusBar();

bar->showMessage( "test" );
Du brauchst somit deine "test" Funktion nicht mehr. Du kannst nun direkt auf dein MainWindow Statusbar zugreifen. Habe zwar selber noch nie ne Statusbar eingesetzt, aber so ist es in der Qt Doku beschrieben...schau mal nach: http://doc.trolltech.com/4.1/qmainwindow.html#statusBar


Gruss
bigmil

Verfasst: 8. August 2006 15:19
von darmstadt
Geht auch nicht.

Verfasst: 8. August 2006 16:17
von bigmil
Was heisst den "geht auch nicht"? was geschieht den nun? Wo erstellst du dein MainWindow? Im main()? Dann würde ich die Statusbar im Konstruktor deiner Mainwindow Klasse erstellen

Code: Alles auswählen

QStatusBar *bar = this->statusBar();
oder dieser Ansatz im Konstruktor deiner MainWindow Klasse sollte auch gehen:

Code: Alles auswählen

QStatusBar *bar = new QStatusBar(this);
Poste sonst mal deine source.
Schau dir sonst das folgende Beispiel an:
http://doc.trolltech.com/4.1/mainwindow ... ation.html


Gruss
bigmil