2015-03-11 1 views
0

J'ai 2 colonnes avec 3 lignes dans une fenêtre. Il ressemble à ceci:Alignement vertical en Qt

enter image description here

Comment puis-je me débarrasser de l'espace vertical supplémentaire après la QCheckBox dans la première rangée de la première colonne?

ceci est mon code:

QGridLayout *mainLayout = new QGridLayout; 
QLabel *speedLabel = new QLabel(tr("speed (%)")); 

mainLayout->setVerticalSpacing(5); 
mainLayout->setColumnStretch(1,2); 
mainLayout->addWidget(beginBool,0,0,Qt::AlignTop); 
mainLayout->addWidget(speedLabel,1,0); 
mainLayout->addWidget(speedSlider,2,0); 
mainLayout->addWidget(graphic,0,1); 

setLayout(mainLayout); 
+1

-je obtenir la mauvaise image? Je ne vois pas de QComboBox. –

+0

Woops, je voulais dire QCheckBox –

+1

Quel est le type 'graphic'? Je pense que c'est la raison. – pezy

Répondre

1

Essayez de changer

mainLayout->addWidget(graphic,0,1); 

à ceci:

mainLayout->addWidget(graphic,0,1,3,1); 

Il va se débarrasser de l'espace vertical supplémentaire.

(La cellule de graphic commencera à 0 (ligne), 1 (col) couvrant 3 lignes et 1 colonnes, voir QGridLayout::addWidget)