Seite 1 von 1

QUiLoader, QDialog: Wie Elemente ansprechen?

Verfasst: 20. Mai 2006 11:04
von stefan-tiger
Hallo,

Ich lade mit dem QUiLoader eine ui Datei vom Typ QDialog.

Darauf befinden sich Labels deren Text ich gern zur laufzeit ändern möchte.

Hier mein Code:

Code: Alles auswählen

 // display ranking on qt-widget
 {
 QUiLoader loader;
 QFile file("../src/qubaRanking.ui");
 file.open(QFile::ReadOnly);
 QWidget *myWidget = loader.load(&file, &MyqubaWidget);

 myWidget->lbl_1st_Player=iRanking[0][0];


 myWidget->show();
 file.close();
Kompilerfehler:

Code: Alles auswählen

src/quba.cpp: In member function `void quba::FinishGame()':
src/quba.cpp:464: Fehler: »class QWidget« hat kein Element namens »lbl_1st_Player«
Der Fehler ist mir klar, nur leider hab ich keine Idee wie ich Ihn beheben kann.

Verfasst: 15. Mai 2007 02:51
von SirTwist
ich nehme mal an lbl_1st_Player ist in Label
und labels kannst du nicht direkt ansprechen da auch diese klassen sind

demnach sollte ein
myWidget->lbl_1st_Player->setText (iRanking[0][0])
den fehelr beheben

Verfasst: 15. Mai 2007 09:15
von upsala

Code: Alles auswählen

T QObject::findChild ( const QString & name = QString() ) const
ist dein Freund...