Layoutkampf: Buttonskalierung

Alles rund um die Programmierung mit Qt
Antworten
Souljumper
Beiträge: 23
Registriert: 12. März 2008 14:34

Layoutkampf: Buttonskalierung

Beitrag von Souljumper »

hi,

hab ein paar Probleme mit den Layouts. Hab hier derzeit diese Situation:
http://s105.photobucket.com/albums/m239 ... t=bild.jpg
(nutze qt 4.4.1)
Die Button im oberen Fenster würde ich gerne höher haben, damit der Platz der GroupBox besser ausgenuttz wird. Hab das mit dem GridLayout probiert, bin da aber zu keinem Ergebnis gekommen.

Wie krieg ich das richtig hin, dass die buttons in die höhe skaliert werden?

hier mein code:

header

Code: Alles auswählen

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QWidget>
#include <QGroupBox>
#include <QHBoxLayout>
#include <QGridLayout>
#include <QPushButton>
#include <QLabel>
#include <QIcon>

class MainWindow : public QWidget
{
	Q_OBJECT
	
	public:
		MainWindow();
	private:
		QGridLayout		* mainWinLay;
		QGridLayout 	* grpBoxLay;
		QGroupBox 		* menuBox;
		QPushButton		* searchButton;
		QPushButton		* insertButton;
		QLabel			* dummy;
};

#endif
cpp

Code: Alles auswählen

MainWindow::MainWindow()
{
	setGeometry(30, 50, 1024, 768);
	setWindowTitle(tr("Titeltext"));

	mainWinLay		= new QGridLayout;	
	grpBoxLay		= new QGridLayout;
	menuBox 		= new QGroupBox("Menu");
	searchButton	= new QPushButton(QIcon("lupe.gif"),"Suchen");
	insertButton	= new QPushButton("Einfuegen");
	dummy			= new QLabel("ich bin ein Fuelllabel");
	
	/*
	|
	*/
	
	grpBoxLay->addWidget(searchButton, 0, 0, 2, 2); //2 reihen breit, 2 reihen hoch  - tut es aber net :(
	grpBoxLay->addWidget(insertButton, 0, 2, 2, 2);
	menuBox->setLayout(grpBoxLay);
	
	mainWinLay->addWidget(menuBox, 0, 0);
	mainWinLay->addWidget(dummy	 , 1, 0, 5, 1);
	
	setLayout(mainWinLay);
	
	show();
}
noch eine zweite frage, aus java kenn ich den pack()-Befehl

Causes this Window to be sized to fit the preferred size and layouts of its subcomponents.

gibts sowas auch für die Qt, konnte sowas in der doku nicht finden, evtl hab ich nach dem falschen schlagwort gesucht?
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Buttons höher ziehen? Das sieht bestimmt nicht gut aus - aber egal.
Den Buttons einfach eine größere minmale Höhe zuweisen.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Souljumper
Beiträge: 23
Registriert: 12. März 2008 14:34

Beitrag von Souljumper »

sieht wirklich nicht so dolle aus.

Noch eine Frage. Kann man irgendwie das Fenster automatsich zusammenpacken, damit das äußere Widget auf die Größe reduziert wird die minimal für die inneren Komponenten nötig ist?

In java gibt es da den pack() - Befehl. gibt es sowas auch für die Qt?

Wie kann ich das fenster zentrieren in der bildschirmmitte?
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Ich würde sagen - beschäftige dich mal mit dem Qt Designer - dort kannst Du experimentieren. Es sollte ohne weiteres möglich sein.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Souljumper
Beiträge: 23
Registriert: 12. März 2008 14:34

Beitrag von Souljumper »

Christian81 hat geschrieben:Ich würde sagen - beschäftige dich mal mit dem Qt Designer - dort kannst Du experimentieren. Es sollte ohne weiteres möglich sein.
ui - der designer erschlägt mich etwas. ich komm da noch weniger weit als beim per-hand programmieren.
wie füge ich den im im designer z.b. einem button eine ressource(in diesem fall ein icon) hinzu?
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Souljumper hat geschrieben:ui - der designer erschlägt mich etwas. ich komm da noch weniger weit als beim per-hand programmieren.
wie füge ich den im im designer z.b. einem button eine ressource(in diesem fall ein icon) hinzu?
Neben dem Designer gibt es noch ein anderes Tool - den Assistant ;)
Hier findest du die Doku zum designer. Da findest du auch einen Link, wie man Resourcen einbindet.
Souljumper
Beiträge: 23
Registriert: 12. März 2008 14:34

Beitrag von Souljumper »

danke soweit, jetzt komm ich damit besser zurecht.

wenn ich ein qtableview hab, wie kann ich da im designer spalten definieren und die überschriften anzeigen. am besten auch 2-3 Zeilen Testdaten eintragen?
bei den anderen views geth das mit den testdaten automatisch, bei dieser komischweise nicht.
pfid
Beiträge: 535
Registriert: 22. Februar 2008 16:59

Beitrag von pfid »

Souljumper hat geschrieben:danke soweit, jetzt komm ich damit besser zurecht.

wenn ich ein qtableview hab, wie kann ich da im designer spalten definieren und die überschriften anzeigen. am besten auch 2-3 Zeilen Testdaten eintragen?
bei den anderen views geth das mit den testdaten automatisch, bei dieser komischweise nicht.
Bitte lass dir nicht alles von uns vorkauen/erklären. Die Doku ist ausführlich genug, und zu jeder deiner Fragen sollte es entsprechende Tutorials/Demos geben:

http://doc.trolltech.com/4.5/tutorials.html
http://doc.trolltech.com/4.5/examples.html
http://doc.trolltech.com/4.5/demos.html

Sowie

http://doc.trolltech.com/4.5/classes.html
und
http://doc.trolltech.com/4.5/index.html
Antworten