Code Blöcke

  • Themenstarter Gelöschtes Mitglied 5909
  • Beginndatum
Status
Nicht offen für weitere Antworten.
G

Gelöschtes Mitglied 5909

Gast
Eine Frage: Warum bekomme ich bei folgendem einen Fehler:

Code:
    private Component createBottomPanel() {
        return new JPanel() {
            {
                setLayout(new FlowLayout());
                add(new JButton("Ok"), FlowLayout.TRAILING);
                add(new JButton("Cancel"), FlowLayout.TRAILING);
            }
        };
    }

das ganze ist in einem JFrame mit einem anderen Layout, vermutlich will er add beim JFrame aufrufen, was aber eigentlich durch die Codeblöcke gewährleistet sein sollte. Ich persöhnlich fände den Stil eigentlich ganz nett, einziger nachteil sind viele Klassen wenn man das mit allem so macht. Spart aber schreibarbeit und ist wie ich finde sogar besser lesbar.

Die Exception

Exception in thread "main" java.lang.IllegalArgumentException: illegal component position
at java.awt.Container.addImpl(Unknown Source)
at java.awt.Container.add(Unknown Source)
at de.test.EclipseDialog$1.<init>(EclipseDialog.java:37)
at de.test.EclipseDialog.createBottomPanel(EclipseDialog.java:34)
at de.test.EclipseDialog.createLayout(EclipseDialog.java:30)
at de.test.EclipseDialog.<init>(EclipseDialog.java:21)
at de.test.EclipseDialog.main(EclipseDialog.java:77)

bei der Zeile mit add() vom ok button
 
G

Gelöschtes Mitglied 5909

Gast
ach dich depp

Code:
    private Component createBottomPanel() {
        return new JPanel() {
            {
                setLayout(new FlowLayout(FlowLayout.TRAILING)));
                add(new JButton("Ok") ;
                add(new JButton("Cancel"));
            }
        };
    }

so gehts natürlich.

was haltet ihr von dem "Stil" ?
 

musiKk

Top Contributor
Nicht viel.
Ich weiß auch nicht, ob ich zu unkreativ (oder unwissend) bin, aber ich hätte dem Stück nicht angesehen, dass es durch den Compiler kommt.
 

Landei

Top Contributor
was haltet ihr von dem "Stil"?

Nicht hübsch, aber praktisch. Genau dafür sind diese Init-Blöcke ja da. Mache ich z.B. regelmäßig bei Actions so.

Wäre schön, wenn Sun doch noch zur Vernunft käme und einen - irgendeinen - der drei Closure-Vorschläge umsetzen würde. Dann bräuchte man sowas nicht mehr...
 
S

SlaterB

Gast
hier wird doch ganz unnötig eine Subklasse erzeugt, das ist doch schrecklich,
sowas will man mit Closures bestimmt auch nicht haben,

die drei Befehle könnten genausogut an einem normalen JPanel-Objekt aufrufen werden
 

tfa

Top Contributor
Das seh ich genau so. Es ist schwieriger zu verstehen und behindert beim Debugging. Außerdem spart man mit dem Unsinn höchstens eine Zeile.
 
G

Gelöschtes Mitglied 5909

Gast
Nun wenn die Closures wie bei Groovy umgesetzt werden, dann wirds auch jede Menge class files hageln.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
comp_math Code snippets AWT, Swing, JavaFX & SWT 3
G JavaFX Code in neues Projekt übernehmen AWT, Swing, JavaFX & SWT 0
princess_sara1997 .jar Datei führt den Code nicht richtig aus AWT, Swing, JavaFX & SWT 19
S Ich bringe Code mit JavaFX unter Apache NetBeans IDE 12.6 nicht zum laufen. AWT, Swing, JavaFX & SWT 14
U Kann man den Code umschreiben? AWT, Swing, JavaFX & SWT 8
U Code doch nicht austauschbar in 2DGraphics AWT, Swing, JavaFX & SWT 2
K Bekomme (u.a) javafx.fxml.LoadException trotz "korrektem" Code AWT, Swing, JavaFX & SWT 8
M JavaFX kann man da noch was am code vereinfachen design technisch sieht nicht richtig aus... AWT, Swing, JavaFX & SWT 15
S ActionEvent Press Enter per Code auslösen AWT, Swing, JavaFX & SWT 22
T FXML Datei in Java Code einbinden: javafx.fxml.LoadException AWT, Swing, JavaFX & SWT 2
CptK Ordentlicher Code & Panel ab bestimmter Komponentenzahl scrollbar machen AWT, Swing, JavaFX & SWT 12
T Anderen Java Code durch Code kompilieren und Fehler in Label ausgeben AWT, Swing, JavaFX & SWT 5
L Verbindung von Code und JFrame AWT, Swing, JavaFX & SWT 4
M Swing Code funktioniert auf Windows aber nicht Linux... AWT, Swing, JavaFX & SWT 3
T JavaFX Falscher Wert getLayoutBounds? + Tipps zum Code-Aufbau? AWT, Swing, JavaFX & SWT 8
S JavaFX JavaScript Code in WebView/WebEngine AWT, Swing, JavaFX & SWT 0
L JavaFX GUI mit JavaFX. Scene Builder source code? AWT, Swing, JavaFX & SWT 6
V JavaFX Button Controller Fehler, trotz Erfolg in einem anderem Code? AWT, Swing, JavaFX & SWT 7
Ernesto95 JavaFX FXML vs. Java Code AWT, Swing, JavaFX & SWT 3
T Hilfe bei Code AWT, Swing, JavaFX & SWT 2
B Wie erstelle ich eine JavaFX Anwendung von diesem Code? AWT, Swing, JavaFX & SWT 3
D JavaFX Beim Schließen (Rotes X) Code ausführen AWT, Swing, JavaFX & SWT 1
D JavaFX Dynamisch erzeugte Buttons sollen Code ausführen. AWT, Swing, JavaFX & SWT 2
T Tab per Code wechseln? AWT, Swing, JavaFX & SWT 3
C Swing GUI extrem langsam - GUI-Code richtig ausführen AWT, Swing, JavaFX & SWT 1
U Bild innerhalb hatml code anzeigen AWT, Swing, JavaFX & SWT 5
N JOGL-Code != C OpenGL-Code? AWT, Swing, JavaFX & SWT 9
R Source-Code, Javadoc AWT, Swing, JavaFX & SWT 16
S NetBeans GUI Builder - Code-Platzierung AWT, Swing, JavaFX & SWT 3
J Sauberer Gui-Code? AWT, Swing, JavaFX & SWT 22
B Color String Code AWT, Swing, JavaFX & SWT 3
D JFreeChart - aktuelle code beispiele AWT, Swing, JavaFX & SWT 11
T Bei Klick Code ausführen AWT, Swing, JavaFX & SWT 17
J JMenuBar ist geaddet, aber nicht im Frame. Wo ist der Fehler? (inkl. Code) AWT, Swing, JavaFX & SWT 2
B Swing Laden von serialisierten Objekten (invalid type code AC)) AWT, Swing, JavaFX & SWT 3
S Swing Scrollpanes: wie kann ich durch Java-Code an den "Anfang" scrollen AWT, Swing, JavaFX & SWT 8
J prinzipielles verständnis für Oberfläche/Code-trennung AWT, Swing, JavaFX & SWT 5
A Applet Applet aus Code neu starten AWT, Swing, JavaFX & SWT 2
C 2D-Grafik BufferedImage laden, Frage zum Code AWT, Swing, JavaFX & SWT 2
M JFileChooser setCurrentDirectory() - Verzeichnis relativ zum Code/binary AWT, Swing, JavaFX & SWT 14
L ListSelectionListener durch Code auslösen AWT, Swing, JavaFX & SWT 3
S 2D-Grafik Warum funktioniert dieser Code ? (GUI) AWT, Swing, JavaFX & SWT 9
M ActionListener mit code!!! auslösen AWT, Swing, JavaFX & SWT 3
hdi SWT Shell: Auslagerung von Code verändert Verhalten AWT, Swing, JavaFX & SWT 6
data89 Code-completion-window erzeugen - wie? AWT, Swing, JavaFX & SWT 2
C JTree per code selektierte Node wird nicht farbig hinterlegt AWT, Swing, JavaFX & SWT 2
K Swing GUI code tutorials? AWT, Swing, JavaFX & SWT 5
P Swing [gelöst/erledigt] Gleicher Code läuft unterschiedlich unter Linux und Windows AWT, Swing, JavaFX & SWT 5
S swt table mit checkboxen: wie nachträglich im code setzen? AWT, Swing, JavaFX & SWT 6
PAX Iconified JFrame per Code wieder anzeigen lassen (deiconify) AWT, Swing, JavaFX & SWT 2
O Source Code für "javax.swing.JLabel" ? AWT, Swing, JavaFX & SWT 2
T Öffnen von SWT-Dialogboxen durch HTML-Link in HTML-Code AWT, Swing, JavaFX & SWT 4
Z habe code, habe fehler, habe keine lösung AWT, Swing, JavaFX & SWT 7
P HTMLDocument in einem JTextPane. Anhängen von HTML-Code AWT, Swing, JavaFX & SWT 2
R Sun tutorial code von jcombobox mit image im combobox fehlt! AWT, Swing, JavaFX & SWT 3
S Unterschiedliche Optik trotz gleicher Look and Feel Code? AWT, Swing, JavaFX & SWT 11
M Code umbauen ? AWT, Swing, JavaFX & SWT 7
C GUI passt sich nicht dem Code an! AWT, Swing, JavaFX & SWT 4
7 Latex/MathML Code in JTextPane AWT, Swing, JavaFX & SWT 2
B Code Architektur verbessern. AWT, Swing, JavaFX & SWT 4
R Syntax Highlighting von Java-Code AWT, Swing, JavaFX & SWT 2
O Swing Event / in GUI oder im Code ausgelöst ? AWT, Swing, JavaFX & SWT 2
J eventhandling / Problemmeldung Bitte schaut euch den Code an AWT, Swing, JavaFX & SWT 2
M Code Schloss AWT, Swing, JavaFX & SWT 11
C wysiwyg Editor zum Einbinden in meinem Code AWT, Swing, JavaFX & SWT 14
m@nu JComboBox & ItemListener: per Code 1. Item wählen AWT, Swing, JavaFX & SWT 2
M Mit JTextPane erstelltes Dokument als HTML-Code ausgeben AWT, Swing, JavaFX & SWT 4
H Code nach dem schließen eines Fensters ausführen? AWT, Swing, JavaFX & SWT 3
M Was halter iht von diesem Code? AWT, Swing, JavaFX & SWT 7
Monokuma Blöcke erzeugen (JavaFX) AWT, Swing, JavaFX & SWT 1
G Blöcke erstellen AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben