Hallo zusammen,
ich habe ein JFrame mit verschiedenen Komponenten. Im unteren Teil befindet sich eine JScrolPane welche eine JTable (E1) enthält. Das JFrame wird maximiert. Alle Komponenten werden initialisiert und die Anzeige ist korrekt. Bei der Initialisierung sind die Komponenten leer. Wähle ich über das Menü jetzt einen Eintrag aus, wird die Table (E1) gefüllt. Dazu lösche ich zunächst den Inhalt der Table und füge dann die neuen Werte hinzu. Das funktioniert auch, jedoch scheint sich die Größe des JFrames zu ändern und die Komponenten rutschen unten aus dem Bild bzw. hinter die Taskbar. Zur Verdeutlichung -
Vor dem Füllen:
Nach dem Füllen:
Wie man sieht, wird die Table größer und die Buttons rutschen aus dem Bild.
Da ich Probleme mit der Maximierung hatte habe ich die Bounds des Grafik-Environments ausgelesen und entsprechend im Frame gesetzt.
Anschließend setze ich das Frame auf Maximum mit
Allerdings scheint es mir, dass nach dem Füllen der Table beim Neuzeichnen nicht die zuvor genannten Werte genommen werden, sondern größere.
Für jeden Tipp bin ich dankbar.
Gruß
Jörg
ich habe ein JFrame mit verschiedenen Komponenten. Im unteren Teil befindet sich eine JScrolPane welche eine JTable (E1) enthält. Das JFrame wird maximiert. Alle Komponenten werden initialisiert und die Anzeige ist korrekt. Bei der Initialisierung sind die Komponenten leer. Wähle ich über das Menü jetzt einen Eintrag aus, wird die Table (E1) gefüllt. Dazu lösche ich zunächst den Inhalt der Table und füge dann die neuen Werte hinzu. Das funktioniert auch, jedoch scheint sich die Größe des JFrames zu ändern und die Komponenten rutschen unten aus dem Bild bzw. hinter die Taskbar. Zur Verdeutlichung -
Vor dem Füllen:
Nach dem Füllen:
Wie man sieht, wird die Table größer und die Buttons rutschen aus dem Bild.
Da ich Probleme mit der Maximierung hatte habe ich die Bounds des Grafik-Environments ausgelesen und entsprechend im Frame gesetzt.
Code:
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment ();
Rectangle rect = env.getMaximumWindowBounds ();
setMaximizedBounds (rect);
Anschließend setze ich das Frame auf Maximum mit
Code:
this.setExtendedState (this.getExtendedState () | JFrame.MAXIMIZED_BOTH);
Allerdings scheint es mir, dass nach dem Füllen der Table beim Neuzeichnen nicht die zuvor genannten Werte genommen werden, sondern größere.
Für jeden Tipp bin ich dankbar.
Gruß
Jörg