Seite 1 von 1

zwischen Ansichten Wechseln

Verfasst: 12. Januar 2006 18:40
von ogre
Hallo,

ich möchte in einer Anwendung zwischen zwei Ansichten wechseln, aber es funktioniert leider nicht.

Also, ich habe eine Klasse QTextEdit (Ansicht 1) , welche Aufgerufen wird, wenn ich den Entsprechenden Butten betätige und es gibt eine Klasse XTree ( Ansicht 2), welche ebenfalls über einen butten aufgerufen wird.

Beide Klassen werden auch schön angezeigt, wenn ich sie aufrufen, wenn ich zwischen den beiden Ansichten wechsle gibt es Probleme.

Der Aufruf der Klassen sieht wie folgt aus:

void MyDom::treeView()
{

pXTree = new XTree;
setCentralWidget(pXTree);


}

void MyDom::textView()
{

textEdit = new QTextEdit;
setCentralWidget(textEdit);

}

ich habe es auch schon mit:

void MyDom::textView()
{

textEdit = new QTextEdit;
setCentralWidget(textEdit);
pXTree->close();

}

versucht, es funktioniert leider auch nicht.
Wäre schön, wenn mir einen Helfen könnte.

Re: zwischen Ansichten Wechseln

Verfasst: 13. Januar 2006 07:56
von macman
Ein CentralWidget wird normalerweise nur einmal vergeben, ich hatte bisher keinen Anlaß es zu vergeben, dann zu entfernen, um es neu zuzuweisen. Wenn es unbedingt so sein soll, nimm ein QFrame als CentralWidget. Dem kannst Du beliebige Widget hinzufügen und wieder entfernen.

Verfasst: 13. Januar 2006 10:04
von ogre
du sagst du hattest bisher keinen anlass das centralwidget zu vergeben, wie machst du es dann, wenn du zwischen zwei ansichten zu wechseln willst?
ich hatte bisher keine bessere idee.

Verfasst: 13. Januar 2006 10:30
von macman
ogre hat geschrieben:du sagst du hattest bisher keinen anlass das centralwidget zu vergeben, wie machst du es dann, wenn du zwischen zwei ansichten zu wechseln willst?
Da hab ich mich falsch ausgedrückt. Ich vergebe durchaus ein CentralWidget, nur ändere ich es später nicht mehr. Und was mehrere Ansichten angeht, da kommt es auf den Verwendungszweck an. Entweder per MDI, wobei jede Ansicht ihr eigenes Fenster hat, oder mittels QStackedWidget, bei dem mehrere Ansichten parallel existieren, aber nur eine sichtbar ist.

Es hängt also vom Inhalt ab und ob man verschiedene hat, und einzeln darstellen will, oder ob man nur einen Inhalt hat und den verschieden darstellen will.

Verfasst: 13. Januar 2006 19:57
von ogre
Hallo,

ich habe es mit QStackedWidget versucht, es funktioniert auch ganz gut. Hat jemand eine Ahnung, wie man den QStackedWidget mit Hilfe von Buttons umschalten kann habe nur was mit QComboBox gefunden.


Thx

Verfasst: 13. Januar 2006 20:56
von macman
Buttons haben normalerweise nur einen Slot und in dem holst Du dann das entsprechende Stack nach vorne, QStackedWidget->raise(num).

Verfasst: 11. April 2006 23:03
von oberschlingel
Siehe auch
"Config Dialog Example"
inder Qt-Dokumentation.