JPanel zu JFrame hinzufügen

8

Ich habe ein Programm, in dem ein JPanel zu einem JFrame hinzugefügt wird:

%Vor%

Ich erhalte eine Fehlermeldung, in der ich gefragt werde, ob ich den Typ von "Panel" in "Komponente" ändern soll. Ich repariere diesen Fehler? Es will ich tun: Component Panel = neue Komponente ();

    
Anonymous181 04.05.2012, 19:22
quelle

5 Antworten

14
%Vor%     
Andrew Thompson 04.05.2012, 19:28
quelle
2

mach es einfach

%Vor%     
sabbibJAVA 28.07.2012 19:42
quelle
1

Anstatt dass Ihre Test2-Klasse eine JPanel enthält, sollten Sie die Subklasse JPanel haben:

%Vor%

Weitere Details:

JPanel ist eine Unterklasse von Component, also jede Methode, die Nimmt eine Komponente als Argument, kann auch ein JPanel als Argument verwendet werden.

Bei älteren Versionen konnten Sie nicht direkt zu einem JFrame hinzufügen. Sie mussten JFrame.getContentPane () verwenden. add (Komponente). Wenn Sie eine ältere Version verwenden, könnte dies ebenfalls ein Problem darstellen. Neuere Versionen von Java lassen Sie JFrame.add (Component) direkt aufrufen.

    
rob 04.05.2012 19:28
quelle
0
%Vor%

Bist du dir da sicher? test ist KEINE Komponente! Um das zu tun, was Sie versuchen, sollten Sie Test2 extendieren JPanel !

    
StepTNT 04.05.2012 19:27
quelle
0

Ihre Test2 -Klasse ist keine Component , sie hat eine Component , was ein Unterschied ist.

Entweder machst du etwas wie

%Vor%

nachdem Sie einen Getter für das Panel in Ihrer Klasse eingeführt haben oder Sie sicherstellen, dass Ihre Test2 -Klasse zu Component wird (z. B. durch Erweitern eines JPanel )

    
Robin 04.05.2012 19:28
quelle

Tags und Links