On Wed, Dec 05, 2001 at 08:13:43PM +0100, Andre Schulze wrote:
Moin,
ich habe hier mal ne Frage an die Qt Experten: warum sind Widgets nicht sichtbar, die als Objekt definiert wurden, wohingegen mittels des new Operators erzeugte Widgets sichtbar sind?
Nicht generell... Eigentlich muss jedes QWidget mittels der Methode 'show()' sichtbar gemacht werden. Wenn du ein Programm schreibst mit einem Object QApplication, weist du ihm ein MainWidget:
QApplication app;
QWidget wdg("toplevel", 0); wdg.show();
app.setMainWidget(&wdg);
Wenn du jetzt ein anderes Widget auf unser gerade erzeugtes Widget draufpappen möchtest, allozierst du es normalerweise mit 'new', gibst im Konstruktor aber einen Pointer auf das Elternobjekt mit:
QWidget *childWidget = new QWidget("child", &wdg);
Das Elternobjekt ruft nun automagisch die show()-Methode all seiner Kinder auf.
Ciao, Tobias