2016-05-24 12 views
2
Container c = this.getContentPane(); 
    JLabel lbl = new JLabel("Label"); 
    c.add(lbl); 

Was ist der Unterschied zwischen der Verwendung der oben genannten Methode & dieser? wohl wissend, dass beide dieselben ErgebnisseWarum sollte ich Java-Container verwenden?

JLabel lbl = new JLabel("Label"); 
    add(lbl); 

& geben, wenn ich viele Artikel in den Rahmen setzen müssen, kann ich nur viele Panels machen und sie alle zu einem Mainpanel hinzufügen, sehe ich keine Notwendigkeit für Container, sorry für so eine grundlegende Frage

Ich weiß niemand GUI nach Code jetzt, aber es ist für Studienzwecke so ..!

Antwort

0

Es ist gut JPanel s zu verwenden, ein Jpanel erstellen und Elemente hinzufügen (JLabel, JText) hinein.

1

Sie müssen keine Container verwenden. Verwenden Sie vorzugsweise WindowBuilder, um einige GUI in Eclipse oder Matisse in Netbeans zu konstruieren, sie sind ziemlich gute WYSWIG UI-Design-Tool. Versuch sie. Es wäre auch gut für Sie, einige Bücher über die UI-Programmierung zu lesen, besonders über Swing, wenn Sie es verwenden möchten. Ich kann das Buch "Filthy Rich Clients: Entwicklung von animierten und grafischen Effekten für Desktop-Java-Anwendungen"

2

Manchmal ist es schön, Ihre Sachen in Container für die Verwaltbarkeit zu segmentieren. Es ist jedoch nicht erforderlich. Anders als bei dynamischen Komponenten wird nur sehr wenig GUI-Erstellung in Code durchgeführt. Wie von anderen empfohlen, verwenden Sie einen GUI-Builder für Ihre primäre Arbeit. Wenn nötig, können Sie Code einfügen, aber ich finde, dass dies ein ziemlich ungewöhnliches Bedürfnis ist.

+0

Ich weiß, es ist nur für Studienzwecke, also wollte ich wissen, warum sollte man Container verwenden, wie ich sie völlig unnötig finde – n0krashy

+0

@ n0krashy Es ist alles für Code-Verwaltbarkeit (Änderbarkeit) und Lesbarkeit - kurz gesagt erfahrene Programmierer sind oft Strukturieren ihres Codes, um ihr Leben zu erleichtern, wenn es in Zukunft zu einem neuen Verständnis kommen und diesen Code ändern wird. Aber in Ihrem Fall gibt es andere und möglicherweise bessere Möglichkeiten, dies zu erreichen, als Container zu verwenden. –

Verwandte Themen