Bonjour tout le monde.

J'ai un petit soucis je n'arrive pas à récupérer la largeur de ma table lorsque je fais un table.getwidth() j'obtiens 0 au lieu de la largeur de ma table.
Pouvez vous m'aider svp?

voici le code:
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
 
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package javafxapplication3;
 
 
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuBar;
import javafx.scene.control.MenuItem;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.input.KeyCombination;
import javafx.scene.layout.VBox;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
 
/**
 *
 * @author romain
 */
public class JavaFXApplication3 extends Application {
 
    /**
     * @param args the command line arguments
     */
    private TableView table = new TableView();
 
    public static void main(String[] args) {
        launch(args);
    }
 
    @Override
    public void start(Stage primaryStage) {
        creerihm(primaryStage);
 
    }
    public void creerihm(Stage primaryStage)
    {
        // création de la fenêtre
        primaryStage.setTitle("ConsomActionFX");
        primaryStage.setWidth(800);
        primaryStage.setHeight(800);
        primaryStage.setResizable(false);
 
        // création de la barre de menu
        final Menu menufichier = new Menu("Fichier");
        final Menu menuconso = new Menu("Consommation");
        final Menu menumaintenance = new Menu("Maintenance");
        final Menu menuabout = new Menu("?");
 
        MenuBar menuBar = new MenuBar();
        menuBar.getMenus().addAll(menufichier, menuconso, menumaintenance, menuabout);
 
        //création des items des menus
        MenuItem ajoutplein = new MenuItem("Ajouter un plein");
        //apropos.setAccelerator(KeyCombination.keyCombination("Ctrl+?"));
        ajoutplein.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent t) {
 
        }
        });
 
        MenuItem modifplein = new MenuItem("Modifier un plein");
        //apropos.setAccelerator(KeyCombination.keyCombination("Ctrl+?"));
        modifplein.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent t) {
 
        }
        });
 
        MenuItem supprimplein = new MenuItem("Supprimer un plein");
        //apropos.setAccelerator(KeyCombination.keyCombination("Ctrl+?"));
        supprimplein.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent t) {
 
        }
        });
 
        MenuItem reinitbdd = new MenuItem("Réinitialiser la bdd");
        //apropos.setAccelerator(KeyCombination.keyCombination("Ctrl+?"));
        reinitbdd.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent t) {
 
        }
        });
 
        MenuItem consodernierplein = new MenuItem("Consommation du dernier plein");
        //apropos.setAccelerator(KeyCombination.keyCombination("Ctrl+?"));
        consodernierplein.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent t) {
 
        }
        });
 
        MenuItem consoglobale = new MenuItem("Consommation globale");
        //apropos.setAccelerator(KeyCombination.keyCombination("Ctrl+?"));
        consoglobale.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent t) {
 
        }
        });
 
        MenuItem apropos = new MenuItem("A propos...");
        //apropos.setAccelerator(KeyCombination.keyCombination("Ctrl+?"));
        apropos.setOnAction(new EventHandler<ActionEvent>() {
        public void handle(ActionEvent t) {
 
        }
        });
 
        // ajout des items dans les menus
        menufichier.getItems().addAll(ajoutplein,modifplein,supprimplein);
        menuconso.getItems().addAll(consodernierplein,consoglobale);
        menumaintenance.getItems().addAll(reinitbdd);
        menuabout.getItems().addAll(apropos);
 
        // ajout du label informations
        final Label lblinfo = new Label("Informations enregistrées");
        lblinfo.setFont(Font.font("Arial",FontWeight.BOLD, 16));
        lblinfo.setTextFill(Color.BLACK);
 
        // création de la table
        TableColumn colDate = new TableColumn("Date");
        TableColumn colLitres = new TableColumn("Litres");
        TableColumn colKm = new TableColumn("Kilomètres");
        TableColumn colConso = new TableColumn("Consommation");
        table.setPrefSize(700, 700);
        table.setEditable(false);
 
        colDate.setPrefWidth(193);
        colDate.setResizable(false);
        colLitres.setPrefWidth(193);
        colLitres.setResizable(false);
        colKm.setPrefWidth(193);
        colKm.setResizable(false);
        colConso.setPrefWidth(193);
        colConso.setResizable(false);
        table.getColumns().addAll(colDate, colLitres, colKm,colConso);
 
        // création du layout vertical et ajout des composants
        VBox layoutvertical = new VBox();
        layoutvertical.setSpacing(10);
        layoutvertical.getChildren().add(menuBar);
        layoutvertical.getChildren().add(lblinfo);
        layoutvertical.getChildren().add(table);
        layoutvertical.setPadding(new Insets(10, 10, 10, 10));
 
        // définition de la scène et affichage
        primaryStage.setScene(new Scene(layoutvertical, 800, 800));
        primaryStage.show();  
        double t = table.getWidth();
    }
}