JButton verschwindet bei der Größenänderung

8

Wer weiß oder hat eine Idee, warum meine Schaltfläche verschwindet, nachdem ich das Applet verkleinert habe?

das ist mein Code:

%Vor%     
Elias Sanchez 01.09.2012, 23:29
quelle

6 Antworten

1

Ich bin mir nicht sicher, ob es eine gute Idee ist, die Init-Methode neu zu definieren. Wenn ich mir Ссылка anschaue, würde ich erwarten, dass Sie nur den Run implementieren. Methode. Override init ohne Aufruf von super.init () Sieht für mich seltsam aus.

Vielleicht wäre es besser, wenn Sie direkt von JApplet für Ihre ersten Schritte in der Applet-Programmierung ableiten.

    
Franz Fischer 12.01.2013 20:14
quelle
0

Angenommen, dass

  • Ihr ConsoleProgram erweitert (direkt oder indirekt) JApplet
  • Sie haben SOUTH als statische endgültige Variable mit dem Wert BorderLayout.SOUTH deklariert (andernfalls kompiliert Ihr Code nicht)

Der Code sollte funktionieren, es muss nicht neu gezeichnet werden (es sei denn, Sie möchten eine anwendungsspezifische Optimierung durchführen). Ich habe einfach Ihren Code kopiert und eingefügt (indem ich die beiden obigen Annahmen erläutert habe), ich sehe das Applet und die Schaltfläche verschwindet nicht bei der Größenänderung.

Wie auch immer, es gibt einige "nicht gute" Dinge im Code:

  1. Zuallererst, ein Namenskonventionsproblem: Der Klassenname sollte "Button" sein, mit dem ersten Großbuchstaben (darüber hinaus ist es ein armer Name für ein Applet)
  2. Zweitens sollten Aktion Listener vor dem Hinzufügen der Komponente hinzugefügt werden;
  3. Drittens, wie Oracle doc hier hier vorschlägt, sollte der Code, der die GUI erstellt ein Job sein, der im Event-Dispatcher-Thread ausgeführt wird. Sie können dies tun, indem Sie den Build-GUI-Code mithilfe von SwingUtilities.invokeAndWait (Runnable ()
  4. in eine ausführbare Datei umwandeln
Andrea 03.01.2013 21:36
quelle
0

Haben Sie versucht, super.init () am Anfang Ihrer init () -Methode aufzurufen?

    
Edward Falk 18.01.2013 01:09
quelle
0

Verwenden Sie explizit ein Layout für Ihre Konsole und verwenden Sie dann die relative Positionierung.

    
user2078263 16.02.2013 23:36
quelle
-1

Um eine Schaltfläche im Applet neu zu skalieren:

%Vor%

Um die Größe einer Schaltfläche in JFrame zu ändern:

%Vor%     
Ahmed Hassanien 06.01.2013 09:49
quelle
-2

Hast du die Repaint-Methode deklariert ... ???

Sie benutzen Swing. Es muss ein Repaint deklariert werden.

Bitte definieren Sie eine benutzerdefinierte Repaint-Methode

    
Vineet Verma 06.09.2012 09:47
quelle

Tags und Links