Java Reference
In-Depth Information
Die Bedeutung der Parameter ändert sich je nach gewählter geometrischer Figur.
Außerdem sind nicht alle Optionen sinnvoll oder erforderlich. Die Option gefüllt ist
bei einer Linie nicht sinnvoll. Deshalb soll sie bei der Auswahl von Linie unsichtbar
gemacht werden. Ein Kreis wird mit der Methode
drawOval
gezeichnet. Dabei ist die
Breite gleich der Höhe. Die Eingabemöglichkeit für die Breite reicht hier aus.
Die
Abbildung 13.6
zeigt, wie sich die Beschriftung der Textfelder und die Sichtbarkeit
der Komponenten mit der Auswahl der geometrischen Figur ändern sollen.
Da ein Mausklick auf einen Radiobutton immer bewirkt, dass dieser ausgewählt wird,
können mit einem
ActionListener
die Anpassungen im Frame ausgelöst werden. Die
Linie ist die einzige eindimensionale Figur und erfordert anstelle von Position, Breite
und Höhe die Eingabe von Startpunkt und Endepunkt. Sie können eine allgemeingül-
tige Methode (
Listing 13.3
) zum Beschriften der Komponenten erstellen, die prüft, ob die
Linie gewählt wurde und davon abhängig die Beschriftungen vornimmt. Diese Methode
kann dann von jedem
ActionListener
verwendet werden:
13
private void setzeBeschriftungen() {
if (jRBtnLinie.isSelected()) {
jLPositionx1.setText("Startpunkt x:");
jLPositionx2.setText("Endpunkt x:");
jLPositiony2.setText("y:");
}else{
jLPositionx1.setText("Position x:");
jLPositionx2.setText("Breite:");
jLPositiony2.setText("Höhe:");
}
}
Listing 13.3
Methode zum Beschriften der Textfelder
Die
ActionListener
-Methoden der Radiobuttons rufen dann alle die Methode
setzeBe-
schriftungen
auf und steuern die Sichtbarkeit der Komponenten. Das
Listing 13.4
zeigt
exemplarisch die Methode des Radiobuttons zur Auswahl der Linie:
private void jRBtnLinieActionPerformed(ActionEvent evt) {
setzeBeschriftungen();
jCheckBgefuellt.setVisible(false);
jLPositiony2.setVisible(true);