Grüß euch zusammen!
Habe vor Kurzem ein bisschen mit der GUI Programmierung begonnen.
Habe gleich auf den oracle pages selbst gelesen, dass sie nicht empfehlen, ein Layout händisch zusammenzubasteln sondern entsprechende unterstützende GUI-Software zu verwenden.
Allerdings dachte ich mir, dass es wahrsch. schon sinnvoll ist, gewisse basics trotzdem zu beherrschen. Habe also angefangen, die einschlägigen Seiten zu studieren ... und es scheint zwar alles ganz hierarchisch und logisch, aber irgendwie funktionierts nie wie es soll!
Mein Mini Projekt:
Ich möchte ein Fenster, das aus zwei Blöcken besteht:
Der linke Block soll 6 Textfelder breit und 8 Textfelder hoch sein (also 48 TFs enthalten).
Dann soll etwas Abstand nach rechts sein und ein zweiter Block mit Textfeldern entstehen.
Jedes Textfeld soll idealerweise genau zwei Ziffern aufnehmen können (andere Eingabe am besten gar nicht erst zulassen)
Dann halt noch ein Button um die Eingaben zu lesen, das wärs schon.
Allerdings bekomm ichs nicht mal hin diese Textfelder anzuordnen ...
Habe gelesen, das GridLayout wäre ideal, da es ein Raster vorgibt.
Ich habe das ganze jetzt mal in eineb Klasse extends JApplet gekleidet.
(Weiß aber nicht wirklich, ob ein Frame, ein JFrame oder ein Applet besser wäre - unmöglich, das herauszufinden ...)
Hier ist mal mein Code-Schnipsel:
Seltsamerweise sieht man immer nur ein Textfield oben links, die anderen erscheinen erst, wenn man mit dem Cursor reinspringt. Woran liegt das?
Und ist das jetzt generell richtig und sinnvoll programmiert?
Und wenn ich jetzt den rechten Block dazu machen will, mach ich dann beide Blöcke auf ein Panel und adde die beidem Panel zu meinem contentPane?
Habe vor Kurzem ein bisschen mit der GUI Programmierung begonnen.
Habe gleich auf den oracle pages selbst gelesen, dass sie nicht empfehlen, ein Layout händisch zusammenzubasteln sondern entsprechende unterstützende GUI-Software zu verwenden.
Allerdings dachte ich mir, dass es wahrsch. schon sinnvoll ist, gewisse basics trotzdem zu beherrschen. Habe also angefangen, die einschlägigen Seiten zu studieren ... und es scheint zwar alles ganz hierarchisch und logisch, aber irgendwie funktionierts nie wie es soll!
Mein Mini Projekt:
Ich möchte ein Fenster, das aus zwei Blöcken besteht:
Der linke Block soll 6 Textfelder breit und 8 Textfelder hoch sein (also 48 TFs enthalten).
Dann soll etwas Abstand nach rechts sein und ein zweiter Block mit Textfeldern entstehen.
Jedes Textfeld soll idealerweise genau zwei Ziffern aufnehmen können (andere Eingabe am besten gar nicht erst zulassen)
Dann halt noch ein Button um die Eingaben zu lesen, das wärs schon.
Allerdings bekomm ichs nicht mal hin diese Textfelder anzuordnen ...
Habe gelesen, das GridLayout wäre ideal, da es ein Raster vorgibt.
Ich habe das ganze jetzt mal in eineb Klasse extends JApplet gekleidet.
(Weiß aber nicht wirklich, ob ein Frame, ein JFrame oder ein Applet besser wäre - unmöglich, das herauszufinden ...)
Hier ist mal mein Code-Schnipsel:
Java:
public void init() {
int maxVGap = 15;
int maxHGap = 15;
GridLayout gl = new GridLayout(8, 6, 15, 15);
final JPanel contentPane = new JPanel();
contentPane.setLayout(gl);
// just a fake textfield
JTextField tf = new JTextField(2);
Dimension tfDimension = tf.getSize();
contentPane.setPreferredSize(new Dimension((int) (tfDimension.getWidth() * 13 + maxHGap * 12), (int) (tfDimension.getHeight() * 8 + maxVGap * 7)));
for (int i = 0; i < 48; i++) {
contentPane.add(new JTextField());
}
setContentPane(contentPane);
}
Seltsamerweise sieht man immer nur ein Textfield oben links, die anderen erscheinen erst, wenn man mit dem Cursor reinspringt. Woran liegt das?
Und ist das jetzt generell richtig und sinnvoll programmiert?
Und wenn ich jetzt den rechten Block dazu machen will, mach ich dann beide Blöcke auf ein Panel und adde die beidem Panel zu meinem contentPane?