Qt - Veränderung QWidget layout
Betrachten Sie wir haben eine QWidget
und ein QLayout
namens general_layout
enthält andere widgets und layouts. general_layout
als QWidget
- layout wie dieses:
setLayout(general_layout)
Nun soll ich ändern den Inhalt QWidget
. Wie kann ich das tun? Ich habe versucht zu löschen und erstellen Sie ein neues layout für die QWidget
und das neue layout als layout der QWidget
, aber nicht abgeschlossen werden konnte meine Absichten erfolgreich.
Dies ist mein code:
delete general_layout;
general_layout = new QHBoxLayout;
general_layout->addLayout(some_layout);
myQWidget->setLayout(general_layout);
- Könnten Sie etwas konkreter über dein problem? Was Sie tun, scheint richtig zu sein (dh löschen Sie alte layout, bevor Sie eine neue).
- Sicher!!! Ich Tue das folgende: löschen general_layout; general_layout = new QHBoxLayout; general_layout->addLayout(some_layout); myQWidget->setLayout(general_layout);
InformationsquelleAutor Narek | 2010-06-07
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das problem ist, dass die widgets in einem layout nicht zerstört wird, wenn das löschen eines Layouts. Dies führt dazu, dass alle Kind-widgets von myQWidget noch vorhanden sind, werden es ohne ein layout.
Die Lösung ist einfach: fügen Sie eine
nach