mikrocontroller.net

Forum: PC-Programmierung Java Swing Buttons hinzufügen


Autor: jo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich habe ein Beispiel von einem Java Buch, jedoch klappt es bei 
mir ncht wenn ich es in Eclipse einfüge:
import javax.swing.*;
public class Buttons extends JFrame {
  JButton abort = new JButton("Abbrechen");
  JButton whl = new JButton("Wiederholen");
  JButton err = new JButton("Fehler");
  
  public Buttons(){
     super("buttons");
    setSize(80,140);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    JPanel pane = new JPanel();
    pane.add(abort);
    pane.add(whl);
    pane.add(err);


  }
  public static void main(String[]arg){
    Buttons rb = new Buttons();
   rb.show();
  }
  

}

Die Buttons werden nicht angezeigt.
Außerdem wird das Wort show durchgestrichen.
Aber es ist 1:1 so aus einem Buch. Wie muss man es ändern, damit es 
funktioniert?

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Jo,

wenn man das Panel pane noch zum JFrame hinzufügt, dann können die 
Buttons auch angezeigt werden:
   pane.add(whl);
   pane.add(err);
   getContentPane().Add(pane);
  }

Autor: Läubi .. (laeubi) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jo wrote:
> Hallo, ich habe ein Beispiel von einem Java Buch, jedoch klappt es bei
> mir ncht wenn ich es in Eclipse einfüge:
Wenn das SO im Buch steht schmeiß es am besten gleich aufs Altpapier!
Ansonsten: Buch mal genauer lesen.

1) Das Panel muß dem Frame hinzugefügt werden oder der Vorhanden 
Container [ getContentPane() ] verwendet werden.
2) Das Panel braucht wenn du die Buttons alle sehen willst einen Anderen 
Layoutmanager (z.B. BoxLayout oder so...)
3) schon mal über das "durchgestrichene" drübergegangen? Eclipse sagt 
dir dann was es damit auf sich hat nämlich das diese Methode deprecated 
(nicht zur Verwendung empfohlen) ist. Benutze setVisible(true) 
stattdessen.

Autor: jo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen, danke für die Antworten.
Ich habe  noch
  getContentPane().add(pane);

ergänzt, jetzt geht's.
 Läubi, was meinst du mit deinem zweiten Hinweis? Ich habe den nicht 
befolgt, aber es klappt trotzdem. Was sind Layout Manager?

Autor: Läubi .. (laeubi) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Google --> Java Insel Layoutmanager

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Layout-Manager sind ein sehr leitstungsfähiges Konzept in AWT/Swing/SWT 
mit dem eine Positionierung von UI-Elementen ohne absolute Koordinaten 
und eine Größenanpassung beim Ändern von Größen von Formularen erreicht 
wird. Bei Sun gibt es dazu auch ein Tutorial:

http://java.sun.com/docs/books/tutorial/uiswing/la...

Gruß
Markus

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jo wrote:
>  Läubi, was meinst du mit deinem zweiten Hinweis? Ich habe den nicht
> befolgt, aber es klappt trotzdem. Was sind Layout Manager?

Ohne wirst Du nicht auskommen, sonst kannst Du den Inhalt von Panels 
nicht anordnen. Es gibt eine Menge unterschiedlicher LayoutManager, z.B. 
GridbagLayout oder BorderLayout. Mal nachlesen.

Und wenn's wirklich so im Buch steht ist das schon mehr als schwach. Was 
ist das fuer ein Buch?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.