Frame vergrößert sich nicht



  • Hi, ich hab folgenden Code...
    Der Frame wird aber nicht grösser, sondern bleibt so klein, dass man nur die Statuszeile und die Kopfzeile sieht. (also 2 Zeilen)
    Warum klappt das mit setSize nicht?
    Ich dachte, der stellt sich dann automatisch beim Start auf eine bestimmte Größe und nicht erst, wenn man den "Maximieren"-Button drückt!
    Gruß, Tobias

    public class InfoFrame extends Frame implements WindowListener {
    
      public InfoFrame() {
        // Bild laden
        img = getImage("info.jpg");
        this.setSize( img.getWidth(this), img.getHeight(this)+40 );
    
        //this.setResizable(false);
        // Einstellungen
        this.addWindowListener(this);
        this.setTitle("Info");
      }
    
      public void start() {
        this.pack();
        this.setVisible(true);
        this.show();
      }
    
      // Paint
      public void paint( Graphics g ) {
        if ( img != null ) {
          g.drawImage( img, 0, 20, this );
        }
      }
    


  • nimm das this.pack(); und this.show(); raus. das pack() macht dein frame so klein, da dann die grösse so geändert wird, dass alles genau reinpasst. das show() ist überflüssig, da du schon setVisible(true) benutzt.



  • danke! Hat geklappt!


Anmelden zum Antworten