Komponenten(LineEdit + PushButton) werden nicht angezeigt

Alles rund um die Programmierung mit Qt
Antworten
FreeCastle
Beiträge: 8
Registriert: 9. Mai 2006 13:57
Kontaktdaten:

Komponenten(LineEdit + PushButton) werden nicht angezeigt

Beitrag 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 ?
FreeCastle
Beiträge: 8
Registriert: 9. Mai 2006 13:57
Kontaktdaten:

Beitrag 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...
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Du erstellst deine LineEdits unterhalb deines MainWindows...
FreeCastle
Beiträge: 8
Registriert: 9. Mai 2006 13:57
Kontaktdaten:

Beitrag 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...
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

:roll:

ich meinte Unterhalb in Pixelkoordinaten!

Setz mal deine Childs auf 0 und nicht auf 600!
Antworten