![]() |
|
|||||||
| AWT, Swing, JavaFX & SWT Themen zur Programmierung von Benutzer-Oberflächen (GUI, Applet) sowie zur Grafikprogrammierung (2D / 3D) |
|
|
|
Themen-Optionen | Thema durchsuchen | Ansicht |
| #1 (permalink) | |||
|
Benutzer
int
Registriert seit: 02.11.2010
Fachbeiträge: 40
Abgegebene Danke: 25
Erhielt 0 Danke für 0 Beiträge
|
Hallo zusammen
Ich mache gerade meine ersten Gehversuche mit der GUI Programmierung. Ich erzeuge ein GUI in der main() Methode. Sobald ein Button gedrückt wird, soll via ActionListener eine Tabelle in das JPanel herein kommen... Doch wenn ich den Button drücke bekomme ich eine NullPointerException... Da ich bis jetzt noch nie GUIs oder Objektorierntiert programmiert habe wäre ich Dankbar für jede Hilfe ![]()
Das problem ist bei der Klasse die vom ActionListener aufgerufen wird: tabbut.add(zinsrechner.table, BorderLayout.NORTH); |
||
|
|
|
| #2 (permalink) | |
|
Java-Forum Team
Moderator
Registriert seit: 13.11.2005
Fachbeiträge: 32.021
Abgegebene Danke: 0
Erhielt 2.623 Danke für 2.583 Beiträge
|
weißt du was eine NullPointerException ist? irgendwas ist null was nicht null sein sollte
die Exception sagt dir weiterhin, dass der Fehler erst in einer inneren Methode auftritt, tabbut ist also nicht null, natürlich vorher auch leicht nachzuprüfen, damit dürfte klar sein was null ist oder? und der nächste Schritt ist dann doch auch klar oder was ist da das Problem? warum ist zinsrechner.table null, wer kümmert sich darum, kontrolliere diesen Code! so ein schöner leichter Fehler.. --- Klassen übrigens unbedingt groß schreiben!
__________________
Hansa wird Meister. |
|
|
|
| Danke sagt: |
fhaslbs (01.07.2011)
|
| #3 (permalink) | |||
|
Stammbenutzer
Viertel Megabyte
Registriert seit: 06.12.2010
Fachbeiträge: 406
Abgegebene Danke: 8
Erhielt 50 Danke für 49 Beiträge
|
Ein Vorteil wäre es schon, wenn du wirklich eine Klasse Zinsrechner schreibst mit Konstruktor und Methoden etc.
Dadurch muss schon mal nicht alles static sein. (außer das war gewollt )
|
||
|
|
|
| #5 (permalink) | |
|
Java-Forum Team
Moderator
Registriert seit: 13.11.2005
Fachbeiträge: 32.021
Abgegebene Danke: 0
Erhielt 2.623 Danke für 2.583 Beiträge
|
a.b.c.d
1) könnte Attribut d von Attribut c von Attribut b der aktuell sichtbaren Variablen a sein 2) könnte die Klasse d im package a.b.c sein 3) könnte das statische Attribut d in der Klasse c im package a.b sein und noch andere Varianten mit eindeutiger Benennung, packages klein, Klassen groß, Variablen klein fällt der größte Teil der Ungewissheit weg 1) wäre die korrekte Standard-Interpretation für a.b.c.d 2) entspräche a.b.c.D (siehe deine Import import java.awt.event.ActionEvent; == klein.klein.klein.Groß) 3) entspräche a.b.C.d in deinem Code ist zinsrechner.table für sich unklar, ist zinsrechner eine Variable oder die Klasse, da viele Leute sowieso gerne Variablen der Form Zinsrechner zinsrechner = ..; anlegen,"Zinsrechner.table" wäre dagegen ziemlich deutlich eine statische Variable in der Klasse
__________________
Hansa wird Meister. |
|
|
|
| Danke sagt: |
fhaslbs (01.07.2011)
|
| #6 (permalink) | ||||||||||||||||||||||||||||||||||
|
Stammbenutzer
Viertel Megabyte
Registriert seit: 06.12.2010
Fachbeiträge: 406
Abgegebene Danke: 8
Erhielt 50 Danke für 49 Beiträge
|
Klassennamen fangen mit Großbuchstaben an, Variablennamen mit Kleinbuchstaben. So weiß man sofort was eine Klasse und was nur eine Variable ist! Hier würde man denken zinsrechner ist nur eine Variable, welche in dieser Klasse/Methode existiert. So wissen andere sofort Zinsrechner ist eine Klasse und zinsatz ein Attribut dieser Klasse |
|||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||
| Danke sagt: |
fhaslbs (01.07.2011)
|
| #7 (permalink) | |
|
Benutzer
int
Themenstarter
Registriert seit: 02.11.2010
Fachbeiträge: 40
Abgegebene Danke: 25
Erhielt 0 Danke für 0 Beiträge
|
das ist ein einleuchtender Grund...
hmmm futzt leider immer noch nicht. Muss ich das JPanel tabbut noch mals dem JFrame frame hinzufügen, und nochmals alles verpacken? |
|
|
|
| #8 (permalink) | |
|
Benutzer
int
Themenstarter
Registriert seit: 02.11.2010
Fachbeiträge: 40
Abgegebene Danke: 25
Erhielt 0 Danke für 0 Beiträge
|
HAHAHA, Alles klar, problem gelöst -- Die Tabelle wurde eigentlich eingefügt, jedoch hat es die Fenstergrösse nicht angepasst, darum sah ich sie nicht.
Vielen Dank nochmals an Alle für euren Support. |
|
|
|
| #9 (permalink) | |
|
Java-Forum Team
Moderator
Registriert seit: 13.11.2005
Fachbeiträge: 32.021
Abgegebene Danke: 0
Erhielt 2.623 Danke für 2.583 Beiträge
|
erneut
frame.pack(); nach dem Hinzufügen der Komponente wäre eine Möglichkeit, wenn es nicht gerade eine NullPointerException dann gäbe, warum und wie zu korrigieren diesmal bitte in Eigenleistung
__________________
Hansa wird Meister. |
|
|
|
|
| Themen-Optionen | Thema durchsuchen |
| Ansicht | |
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| (AWT) Mit TextField Zahlen einlesen lassen | Brayn | AWT, Swing, JavaFX & SWT | 34 | 23.04.2011 18:46 |
| JPanel ersetzen | Jay1980 | AWT, Swing, JavaFX & SWT | 2 | 03.04.2009 11:52 |
| ScrollBar inaktiv / Rekursive Methode | HalloWelt | Java Basics - Anfänger-Themen | 4 | 17.02.2009 22:34 |
| KeyListener funkt. nach austauschen der Panels nicht mehr? | raven | AWT, Swing, JavaFX & SWT | 2 | 10.07.2005 09:19 |
| GUI - 2 Buttons mit 2 Fenstern verlinken | lucky | AWT, Swing, JavaFX & SWT | 4 | 06.01.2005 06:42 |
| Lesezeichen |
|
|