Hallo, ich habe ein Panel mit FlowLayout konstruiert, welches meine Komponenten (Labels) wie gewünscht anordnet und einen Umbruch macht, wenn der Platz nicht ausreicht:
Aaaber: Ich möchte diese Komponente auf einem Fenster mit geschachtelten Panels darstellen, und das funktioniert nicht. Wenn man das dataLabel auf ein anderes Panel platziert, dann findet kein Umbruch statt:
=> Was kann man tun, damit das FlowLayout bei der eingebetteten Komponente funktioniert?
Code:
import java.awt.FlowLayout; import java.awt.Frame; import java.awt.Label; import java.awt.Panel; import java.util.StringTokenizer; public class awtFlowLayoutTest1 extends Frame { public static void main(String[] args) { awtFlowLayoutTest1 aFLT = new awtFlowLayoutTest1(); } public awtFlowLayoutTest1() { Panel dataLabel = new Panel(new FlowLayout(FlowLayout.LEFT, 0, 0)); StringTokenizer tokenizer = new StringTokenizer( "Dies ist der Text mit Umbruch"); while (tokenizer.hasMoreTokens()) { Label token = new Label(tokenizer.nextToken()); dataLabel.add(token); } add(dataLabel); setVisible(true); } }
Code:
import java.awt.FlowLayout; import java.awt.Frame; import java.awt.Label; import java.awt.Panel; import java.util.StringTokenizer; public class awtFlowLayoutTest extends Frame { public static void main(String[] args) { awtFlowLayoutTest aFLT = new awtFlowLayoutTest(); } public awtFlowLayoutTest() { Panel rahmen = new Panel(); Panel dataLabel = new Panel(new FlowLayout(FlowLayout.LEFT, 0, 0)); StringTokenizer tokenizer = new StringTokenizer( "Dies ist der Text mit Umbruch" ); while ( tokenizer.hasMoreTokens() ) { Label token = new Label(tokenizer.nextToken()); dataLabel.add(token); } rahmen.add(dataLabel); add(rahmen); setVisible(true); } }
Comment