CheckboxGoupe frage!

Hallo Leute , ich habe 2 Fragen!

1:
Ich habe eine Checkbox ( farmation) und eine CheckboxGroup! Beide habe ich deklariert und einfegügt und nunn will ich folgenden:

Wenn die Checkbox Aktiviert ist soll auch die CheckboxGroupe enabled sein
Ist die Checkbox nicht aktiviert dann soll die checboxGroupe disabled sein (also nicht anklickbar). Ich habe schon verschiedenes ausprobiert aber nichts hat geklappt!


2: ich habe in der CheckboxGroup 4 Checkboxen
static CheckboxGroup cgb = new CheckboxGroupe();
.....
.....
add(new Checkbox("norden",cbg,true));
add(new Checkbox("osten",cbg,false));
add(new Checkbox("süden",cbg,false));
add(new Checkbox("westen",cbg,false));

Ich will nun 4 IF schleifen (ohne else bedingung) schreiben , die je nach dem welches der 4 checkboxen in der checkboxgroup an ist, eine andere methode ausführen. bsp:

if(wenn die 1 checkbox an ist){
action1();
}

if(wenn die 2 checkbox an ist){
action2();
}

if(wenn die 3 checkbox an ist){
action3();
}

if(wenn die 4 checkbox an ist){
action4();
}


was muss ich in die IF schleifen schreiben das es funktioniert?

Bei einer normalen checkbox habe ich es so gemacht:

boolean ck = formation.getState();
if ( ck == true ){
.....
}
 
Hallo!

Zu Frage1:

Code:
import java.awt.BorderLayout;
import java.awt.Checkbox;
import java.awt.Frame;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

/*
 * Created on 27.06.2004
 *
 * TODO 
 */

/**
 * @author Administrator TODO Describe what the class is used for
 */
public class AWTCheckBoxExample1 extends Frame {

    private final Checkbox chk1, chk2;

    public AWTCheckBoxExample1() {
        super("AWTCheckBoxExample1");

        //Anwendung beenden, wenn Fenster geschlossen wird.
        addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent evt) {
                System.exit(0);
            }
        });

        chk1 = new Checkbox("Chk1");
        chk1.addMouseListener(new MouseAdapter() {
            public void mousePressed(MouseEvent evt) {
                if (chk1.getState()) {
                    chk2.setState(false);
                    chk2.setEnabled(false);
                } else {
                    chk2.setState(true);
                    chk2.setEnabled(true);
                }
            }
        });

        chk2 = new Checkbox("Chk2");

        add(chk1, BorderLayout.NORTH);
        add(chk2, BorderLayout.SOUTH);

        pack();
        setVisible(true);
    }

    public static void main(String[] args) {
        new AWTCheckBoxExample1();
    }
}

Zu Frage 2:

Code:
import java.awt.Checkbox;
import java.awt.CheckboxGroup;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

/*
 * Created on 27.06.2004
 *
 * TODO 
 */

/**
 * @author Administrator TODO Describe what the class is used for
 */
public class AWTCheckBoxExample extends Frame {

    private final Checkbox chk1, chk2, chk3, chk4;

    private final CheckboxGroup chkGrp;

    public AWTCheckBoxExample() {
        super("AWTCheckBoxExample");

        //Anwendung beenden, wenn Fenster geschlossen wird.
        addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent evt) {
                System.exit(0);
            }
        });
        
        //Layout mit 4 Zeilen und einer Spalte
        GridLayout layout = new GridLayout(4, 1);
        setLayout(layout);
        
        //Unsere CheckboxGroup
        chkGrp = new CheckboxGroup();
        
        //unsere Klasse mit der Ereignisbehandlungsroutine
        MouseAdapter adapter = new MouseAdapterImpl();

        chk1 = new Checkbox("Chk1", chkGrp, false);
        add(chk1);
        chk1.addMouseListener(adapter);
        chk2 = new Checkbox("Chk2", chkGrp, false);
        add(chk2);
        chk2.addMouseListener(adapter);
        chk3 = new Checkbox("Chk3", chkGrp, false);
        add(chk3);
        chk3.addMouseListener(adapter);
        chk4 = new Checkbox("Chk4", chkGrp, false);
        add(chk4);
        chk4.addMouseListener(adapter);

        pack();
        setVisible(true);
    }

    public static void main(String[] args) {
        new AWTCheckBoxExample();
    }
    
    class MouseAdapterImpl extends MouseAdapter{

        public void mousePressed(MouseEvent e) {
            //Wir schauen zu welcher Componente die Referenz gehört
            //die wir mit e.getSource() bekommen-
            if(e.getSource() == chk1){
                System.out.println("Chk1 wurde angeklickt");
            }
            if(e.getSource() == chk2){
                System.out.println("Chk2 wurde angeklickt");
            }
            if(e.getSource() == chk3){
                System.out.println("Chk3 wurde angeklickt");
            }
            if(e.getSource() == chk4){
                System.out.println("Chk4 wurde angeklickt");
            }
        }
    }
}

Noch eine Anmerkung: Es gibt keine If-Schleifen sondern nur If-Blöcke.

Gruß Tom
 
gehts auch einfacher? also ich meine so wie ich es bereits geschreiben habe ist es richtig , damit meine ich es funktioniert! Kann man meine fragen noch dazu ergänzen ohne ein komplett neues Prog. zu schreiben?
 
Zurück