Bildgrösse festlegen

Status
Nicht offen für weitere Antworten.

lin

Top Contributor
*n'abend*

Hm, hab da doch schon wieder ein Problem...
Ich möchte ein Bild auf ein Panel zeichnen, so dass es auf die Grösse des Panels skaliert wird...
Die Methode drawImage() skaliert das Bild ja automatisch auf eine angegebene Breite w und Höhe h.

Code:
class JImagePanel extends JPanel {

   public void paint(Graphics g) {
      Graphics2D g2 = (Graphics2D)g;
      //image laden

      g2.drawImage(image, 0, 0, w, h, this);
   }
}


Aber wie bekomme ich die Breite und die Höhe des Panels raus?

Code:
pane.getHeight(); /*und*/ pane.getWidth(); //geben 0 zurück, da das Frame noch nicht gezeichnet ist...

Wie muss ich dat machen?

???:L

Danke schonmal für Antworten!
 

lin

Top Contributor
wie geht das? passt sich die Grösse des Bildes da automatisch an der Grösse des Panels an?
 

lin

Top Contributor
hm, eigentlich wollte ich wissen, wie man die Breite und die Höhe eines Panels rausbekommt, ehe es gezeichnet ist,

image.getScaledInstance(width, height, hints) gibt mir ja ein skaliertes Bild zurück, aber dafür muss ich eben die width und die height wissen, und genau die möchte ich ja rausbekommen... funzt aber eben mit pane.getHeight und pane.getWidth net, weil die 0 zurückgeben, solange das Frame noch nicht gezeichnet ist...
 

The_S

Top Contributor
Weiß jetzt zwar die Antwort net, wie du die Höhe und Breite bekommst, bevor dein Panel gezeichnet ist, aber du kannst die größe deines Panels mit

Code:
setPreferredSize(Dimension dim)

vorab festlegen, falls dir das hilft.
 
R

Roar

Gast
hast du es mit getHeight() und getWidth() schon ausprobiert?
das soltle nämlich wunderbar klappen. sobald dein panel dargestellt wird hat es nämlich höhe und breite und solang es nicht dargestellt hat brauht dein bild auch nicht gezeichnet zu werden
 

lin

Top Contributor
ok, ich werd's mal versuchen, danke schon mal euch allen!

EDIT: ja, funktioniert super mit getWidth & getHeight :D , ich hab nur den Fehler gemacht, dass ich die Klasse, die das Bild zeichnet, vor dem "frame.getContentPane).add(pane)" aufgerufen habe, deshalb konnte die Methode gar nicht wissen, wie gross das ganze einmal wird...

8) bin jetzt total happy :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Größe und Ausrichtung von Komponenten festlegen AWT, Swing, JavaFX & SWT 13
Krappe87 JavaFX minWidth/minHeigth der Stage (des Fensters) festlegen AWT, Swing, JavaFX & SWT 4
M JavaFX FXML Standartgröße festlegen AWT, Swing, JavaFX & SWT 5
F Breite beim GridBagLayout festlegen AWT, Swing, JavaFX & SWT 2
T Swing Größe einer Komponente in einem BoxLayout / FlowLayout festlegen AWT, Swing, JavaFX & SWT 7
M JXTreeTable: Spaltengröße läßt sich nicht mehr festlegen AWT, Swing, JavaFX & SWT 0
S Größe und Farbe vom JButton festlegen AWT, Swing, JavaFX & SWT 2
N JPanel größe wissen/festlegen vor dem Anzeigen AWT, Swing, JavaFX & SWT 3
T Spaltengröße einzelner Spalten in Gridlayout festlegen AWT, Swing, JavaFX & SWT 3
W Swing Optimale Fenstergröße festlegen AWT, Swing, JavaFX & SWT 4
S Rotationsachse eines 3D Objektes festlegen AWT, Swing, JavaFX & SWT 3
J Swing Unteren Abstand für JTable in JScrollPane festlegen AWT, Swing, JavaFX & SWT 10
R Größe eines Labels bei GridBagLayout festlegen AWT, Swing, JavaFX & SWT 9
N Schachspiel Feldgröße festlegen AWT, Swing, JavaFX & SWT 2
J SWT Größe eines Composite mit Gridlayout festlegen AWT, Swing, JavaFX & SWT 2
N Swing JPanel Nur Breite festlegen AWT, Swing, JavaFX & SWT 7
Zettelkasten Swing JRadioButton festlegen AWT, Swing, JavaFX & SWT 2
E Wie Breite und Höhe eines Panels festlegen? AWT, Swing, JavaFX & SWT 5
J maus festlegen AWT, Swing, JavaFX & SWT 6
C Swing Größe von JPanel festlegen AWT, Swing, JavaFX & SWT 2
N breite von JList festlegen AWT, Swing, JavaFX & SWT 3
Pithecanthropus Swing JScrollBar-Position festlegen.. AWT, Swing, JavaFX & SWT 3
E Problem: Größe von Komponenten festlegen AWT, Swing, JavaFX & SWT 4
G GridBagLayout - Komponententbreite festlegen AWT, Swing, JavaFX & SWT 2
F JLabel Größe festlegen AWT, Swing, JavaFX & SWT 2
B Höhe eines Buttons festlegen AWT, Swing, JavaFX & SWT 7
G Eine Schiftart für alle Komponenten festlegen AWT, Swing, JavaFX & SWT 6
G JToggleButton - Hintergrundfarbe beim Drücken festlegen AWT, Swing, JavaFX & SWT 4
A BorderLayout Verhältnis festlegen? AWT, Swing, JavaFX & SWT 5
G verticaleBox, horizontaleBox, Größe festlegen AWT, Swing, JavaFX & SWT 2
A JToolBar: Buttonbreite festlegen AWT, Swing, JavaFX & SWT 7
S Position eines Fensters festlegen AWT, Swing, JavaFX & SWT 2
vogella JToolBar mit JTextField - Größe des Text Feldes festlegen AWT, Swing, JavaFX & SWT 2
O Minimalgröße für JFrame festlegen AWT, Swing, JavaFX & SWT 2
W Festlegen was selektiert wird AWT, Swing, JavaFX & SWT 8
R aktuelles Sichtfeld eines JTextPane festlegen AWT, Swing, JavaFX & SWT 6
M JComboBox: Länge festlegen AWT, Swing, JavaFX & SWT 7
K Transparente Farbe festlegen AWT, Swing, JavaFX & SWT 3
Z JTextPane (text/html): Schrift festlegen AWT, Swing, JavaFX & SWT 5
J jframe minimale grösse festlegen AWT, Swing, JavaFX & SWT 5
L wie kann man die Höhe und Breite von JList festlegen AWT, Swing, JavaFX & SWT 3
B linken rand einer JList-zelle festlegen AWT, Swing, JavaFX & SWT 4
G JButton Größe festlegen? AWT, Swing, JavaFX & SWT 10
M int frame groesse festlegen AWT, Swing, JavaFX & SWT 7

Ähnliche Java Themen


Oben