Bonjour.

J'ai, dans un widget gridLayout, deux widgets groupbox. Un contenant des boutons, et l'autre un contenu variable en fonction du bouton selectionner.

Mon probleme, c'est que les groupbox se chevauchent et donc, c'a devient vite inutilisable.

voici le code:
Code window.h : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#ifndef WINDOW_H
#define WINDOW_H
 
#include <QWidget>
 
class QGroupBox;
class QGridLayout;
 
class Window : public QWidget{
 
		Q_OBJECT
 
	public:
		Window(QWidget *parent = 0);
 
	private:
		QGridLayout *grid; 
		QGroupBox *createButtonBox();
		QGroupBox *createAboutBox();
		QGroupBox *createInfoIpBox();
 
	private slots:
		void about();
		void infoIp();
		//void maxClient();
		//void maxSubnet();
};
 
#endif

Code window.cpp : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#include <QtGui>
#include "window.h"
 
//constructeur
Window::Window(QWidget *parent) : QWidget(parent){
	grid = new QGridLayout;
 
	grid->addWidget(createButtonBox(), 0, 0);
	grid->addWidget(createAboutBox(), 0, 1);
	setLayout(grid);
 
	setWindowTitle(tr("ip_calculator"));
	resize(640, 480);
}
 
//methodes
 
//button box
QGroupBox *Window::createButtonBox(){
	QGroupBox *groupBox = new QGroupBox(tr("Menu"));
 
	//creation des diffrents boutons
	QPushButton *infoIpButton = new QPushButton(tr("&IP infos"));
	QPushButton *maxClientButton = new QPushButton(tr("&Max client"));
	QPushButton *maxSubnetButton = new QPushButton(tr("&Max Subnet"));
	QPushButton *aboutButton = new QPushButton(tr("&About"));
	QPushButton *quitButton = new QPushButton(tr("&Quit"));
 
	//creation du container + placer bouttons
	QVBoxLayout *vbox = new QVBoxLayout;
	vbox->addWidget(infoIpButton);
	vbox->addWidget(maxClientButton);
	vbox->addWidget(maxSubnetButton);
	vbox->addWidget(aboutButton);
	vbox->addWidget(quitButton);
	vbox->addStretch(1);
	groupBox->setFixedSize(100, 480);
	groupBox->setLayout(vbox);
 
	//actions des boutons
	connect(infoIpButton, SIGNAL(clicked()), this, SLOT(infoIp()));
	//connect(maxClientButton, SIGNAL(clicked()), this, SLOT(maxClient()));
	//connect(maxSubnetButton, SIGNAL(clicked()), this, SLOT(maxSubnet()));
	connect(aboutButton, SIGNAL(clicked()), this, SLOT(about()));
	connect(quitButton, SIGNAL(clicked()), this, SLOT(close()));
 
 
	return groupBox;
}
 
//about box
QGroupBox *Window::createAboutBox(){
	QGroupBox *groupBox = new QGroupBox(tr("About"));
	QVBoxLayout *vbox = new QVBoxLayout;
 
	//text
	QLabel *label = new QLabel(this);
	label->setFrameStyle(QFrame::Panel | QFrame::Sunken);
	label->setText("first line\nsecond line");
	label->setAlignment(Qt::AlignBottom | Qt::AlignRight);
 
	vbox->addWidget(label);
	groupBox->setLayout(vbox);
 
	return groupBox;
}
 
QGroupBox *Window::createInfoIpBox(){
	QGroupBox *groupBox = new QGroupBox(tr("Info Ip"));
	QVBoxLayout *vbox = new QVBoxLayout;
 
	//text
	QLabel *label = new QLabel(this);
	label->setFrameStyle(QFrame::Panel | QFrame::Sunken);
	label->setText("info ip");
	label->setAlignment(Qt::AlignBottom | Qt::AlignRight);
 
	vbox->addWidget(label);
	groupBox->setLayout(vbox);
 
	return groupBox;
}
 
//slots
void Window::about(){
	this->grid->addWidget(createAboutBox(), 0, 1);
	//createAboutBox();
}
 
void Window::infoIp(){
	this->grid->addWidget(createInfoIpBox(), 0, 1);
}

Comment faire pour que les groupebox ne se chevauchent plus, mais s'affichent correctement?

merci d'avance.