Bonjour à tous,
J'aimerai trouver le moyen d'avoir un composant graphique tel qu'un Text (Label) ou autre XPanel qui prendrait automatiquement un maximum de place par rapport aux autres composants placés de manière horizontale sur un même parent.
Exemple:
Ce que j'ai aujourd'hui
Ce que j'aimerai:
Code : Sélectionner tout - Visualiser dans une fenêtre à part [-[Progress Bar][Text][Bouton 1][Bouton 2] -]
Que le "Text" prenne toute la place disponible en horizontale pour séparer la ProgressBar des deux boutons
Les "balises" [- et -] représentent le bord d'une fenêtre...
Code : Sélectionner tout - Visualiser dans une fenêtre à part [-[Progress Bar][Text ][Bouton 1][Bouton 2]-]
Voici un exemple d'implémentation 'foireuse' - qui attend une solution de type Glue comme en SWING ou autre comme un GridData avec des champs SWT.FILL en SWT...
Code GXT actuel:
Merci d'avance pour vos solutions.
Code : 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
93
94
95
96
97
98
99
100
101
102
103
104
105
106 import com.extjs.gxt.ui.client.Style.HorizontalAlignment; import com.extjs.gxt.ui.client.widget.Composite; import com.extjs.gxt.ui.client.widget.ContentPanel; import com.extjs.gxt.ui.client.widget.ProgressBar; import com.extjs.gxt.ui.client.widget.Text; import com.extjs.gxt.ui.client.widget.button.Button; import com.extjs.gxt.ui.client.widget.button.ButtonBar; import com.extjs.gxt.ui.client.widget.layout.HBoxLayout; /** * TODO: DOCUMENT ME! * * @author Internal Tools Team */ public class TestComposite extends Composite { /** * Creates a new TestComposite object. */ public TestComposite() { initGUI(); } /** * TODO DOCUMENT ME! */ private void initGUI() { { this.contentPanel = new ContentPanel(); this.contentPanel.setCollapsible(true); { this.buttonBar = new ButtonBar(); this.buttonBar.setAlignment(HorizontalAlignment.RIGHT); { this.progressBar = new ProgressBar(); this.buttonBar.add(this.progressBar); this.progressBar.setWidth("96px"); this.progressBar.updateProgress(0.2, "Saving..."); } { this.text = new Text("New Text"); this.buttonBar.add(this.text); } { this.button = new Button("New Button"); this.buttonBar.add(this.button); } { this.button_1 = new Button("New Button"); this.buttonBar.add(this.button_1); } HBoxLayout hbl_contentPanel = new HBoxLayout(); this.contentPanel.setLayout(hbl_contentPanel); this.contentPanel.add(this.buttonBar); } initComponent(this.contentPanel); this.contentPanel.setSize("524px", "91px"); } } /** TODO Document Me! */ private Button button; /** TODO Document Me! */ private Button button_1; /** TODO Document Me! */ private ButtonBar buttonBar; /** TODO Document Me! */ private ContentPanel contentPanel; /** TODO Document Me! */ private ProgressBar progressBar; /** TODO Document Me! */ private Text text; }
Partager