Seite 1 von 1

Komponenten(LineEdit + PushButton) werden nicht angezeigt

Verfasst: 6. Juni 2006 15:21
von FreeCastle
Hi,
ich wollte mir eigentlich nur mal ganz simpel ein einfaches Fenster mit ein paar Komponenten erzeugen, und zwar habe ich das so gemacht:

Code: Alles auswählen

class MyGui
{
private:
	QPushButton* btnUpdate;
	QLineEdit* userInputFields;
   
        QWidget* mainWindow;
  
public:
    MyGui();
                 
};


MyGui::MyGui()
{	
	int offset;
	int len = 80; //Länge der Eingabefelder in Px
	
	mainWindow = new QWidget();
	mainWindow->setFixedSize(800,600);

	userInputFields = new QLineEdit[4];
	for (int i=0; i<4; i++)
	{
		offset = 100*i+50;
		userInputFields[i].setParent(mainWindow);
		userInputFields[i].setText("Manno");
		userInputFields[i].setGeometry( offset, 600, len ,10);
		//userInputFields[i].show();
	}
	
	//Button in Mitte der Breite positionieren
	btnUpdate = new QPushButton("Update",mainWindow);
	btnUpdate->setGeometry(WIDTH/2 - 40, 630, 80, 25);
	//btnUpdate->show();
	
	mainWindow->show();
}


int main(int argc, char* argv[])
{
	QApplication app(argc,argv);

	MyGui* gui = new MyGui();
	
	return app.exec();
}
Das ist eigentlich alles relativ einfach. Ich erzeuge mir ein Widget (mainWindow) ohne Parent, was ja dann mein Fenster ist, und erstelle anschließend 4 LineEdits und 1 Button. Da setze ich jeweils mainWindow als Parent und positioniere diese anschließend (ich weiß dass das nicht sehr elegant ist, geht aber auch nur ums testen). Wenn ich das übersetzte Programm starte, dann sehe ich zwar das Fenster in richtiger Größe, aber meine ganzen Komponenten sehe ich nicht. D.h. ich bekomme nur ein leeres Fenster zu Gesicht und ich habe absolut keine Ahnung warum.

Kann mir da vielleicht jemand helfen ?

Verfasst: 6. Juni 2006 23:17
von FreeCastle
Hm, ich will ja nicht nerven, aber hat keiner ne Ahnung woran das liegen könnte ? Ist ja eigentlich einfachst Code an QT...

Verfasst: 7. Juni 2006 00:00
von upsala
Du erstellst deine LineEdits unterhalb deines MainWindows...

Verfasst: 7. Juni 2006 15:55
von FreeCastle
Ja das tue ich, aber was soll daran falsch sein ?

Ich habs jetzt aber mal anders probiert, also das Fenster erst ganz am Ende (nach dem Erstellen der Buttons und LineEdits) erstellt. Hat aber nichts gebracht...

Verfasst: 7. Juni 2006 23:33
von upsala
:roll:

ich meinte Unterhalb in Pixelkoordinaten!

Setz mal deine Childs auf 0 und nicht auf 600!