![]() |
| | LinkBack | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Benutzer Registriert seit: 25.10.2004
Beiträge: 38
|
Hallo, folgendes Problem: ich möchte ganz einfach ein Bild in einem JPanel anzeigen lassen. Dieses JPanel soll sich an die Größe des Bildes anpassen. Jpanel liegt im JFrame (neben JMenuBar (oben) und JTextField (ganz unten als Statusleiste); JPanel und JTextField sind mit BorderLayout angeordnet ). So wenn ich jetzt ein Bild lade, soll sich die Größe des JPanels an die Größe des Bildes anpassen und das komplette Fenster (JFrame) soll sich dann natürlich auch an die Größe des JPanel anpassen. Wie kriege ich das am einfachsten/besten hin? Vielen Dank im vorraus, alekz |
| | |
| | Nach oben #2 |
| Benutzer Registriert seit: 05.12.2005
Beiträge: 62
|
Hi, wenn ich dich richtig verstanden habe, müsstest du lediglich nachdem alle Elemente in den JFrame eingefügt wurden, ein pack() ausführen (bevor du setVisible(true) machst). Das sollte eigentlich ausreichen. pack() ist eine Methode von java.awt.Window. Da JFrame aber auch von Window erbt, kannst du es auch für diesen ausführen. http://java.sun.com/j2se/1.5.0/docs/...dow.html#pack() Lg sayang |
| | |
| | Nach oben #3 |
| Neuer Benutzer Registriert seit: 28.03.2009
Beiträge: 2
|
Hallo ich kram den Thread grad nochmal raus^^ Wieso setzt er die Größe des Frames auf 0/0 wenn ich hier this.pack() ausführ?: Code:
public void init()
{
this.setTitle("Musik ein/ausschalten");
this.setLayout(null);
this.setLocation(500, 100);
this.setResizable(false);
this.an = true;
btnPlay = new JButton();
btnPlay.setText("Musik ausschalten");
btnPlay.setSize(btnPlay.getPreferredSize());
btnPlay.setLocation(0, 0);
btnPlay.addActionListener(this);
this.add(btnPlay);
//this.pack();
this.setVisible(true);
}
|
| | |
| | Nach oben #4 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.365
|
Weil du das "Null-Layout" verwendest. Dadurch weiß dein Panel nicht, wieviel Platz es im inneren benötigt. Generell: Niemals setLayout(null) verwenden. Führt nur zu Problemen. Schau dir mal ein paar LayoutManager an (Empfehlung: MiGLayout). |
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |