java profi gesucht
fresserettich 28.11.2003 - 22:26 505 4
fresserettich
Here to stay
|
also ich habe folgendes problem: ich habe die class awt habe mir eine checkboxgroup angelegt und muss wissen wann und welche checkbox er ausgewählt hat da brauche ich eine art actionlistener oder? nur ist das prob dass es so was scheinbar nicht gibt
|
crashman
OC Addicted
|
Hoffe das hilft dir Habs nur schnell in 4 min mit va gemacht. Daher auch die ******* variablennamen. Grüne verbindungen sind "actionperformed" Lila sind die Parameter obiger blau sind objektübergaben Sourcecode als txt. Müsste laufenAja wie das JFrame vom Awt heisst hab ich vergessen. Hab zwar seit ewigkeiten nimmer mit dem awt gearbeitet aber so wie ich das seh läuft das so ab. Du erstellst deine Checkboxes und die Group dann rufst du von jeder Checkbox die methode getCheckbox1(). setCheckboxGroup(getCheckboxGroup1()); naja und jetzt kannst du halt bei einem beliebigen event mit getCheckboxGroup1(). getSelectedCheckbox()die gewählte herausfinden
Bearbeitet von crashman am 29.11.2003, 10:13
|
Ecraft
Here to stay
|
|
fresserettich
Here to stay
|
@crashman mal danke für deinen code nur blicke ich da nicht ganz durch irgendwie sind da x-kommentare dir mehr verwirren als helfen ich hab des ganze mal so geadded: CheckboxGroup cbg1 = new CheckboxGroup(); add(new Checkbox("Spiel gegen Computer",cbg1,false)); add(new Checkbox("Spiel gegen Menschen als Server",cbg1,false)); add(new Checkbox("Spiel gegen Menschen als Client",cbg1,false)); jetzt möchte ich mir einen listener über cbg1 legen und dann eben reagieren wenn er mal was geklickt hat @ecraft sorry aber dein bringt mir null weil ich erstens diese api schon habe und 2tens da nix steht welchen listener man verwenden muss
Bearbeitet von fresserettich am 29.11.2003, 22:57
|
crashman
OC Addicted
|
Ja ist recht schirch das geb ich zu gleich am Anfang: Die Eventhandling Klasse class IvjEventHandler implements java.awt.event.ItemListener {
public void itemStateChanged(java.awt.event.ItemEvent e) {
//erste Checkbox
if (e.getSource() == Checkboxtest.this.getCheckbox2())
connEtoM1(e);
//zweite Checkbox
if (e.getSource() == Checkboxtest.this.getCheckbox1())
connEtoM2(e);
};
};
http://java.sun.com/j2se/1.4.2/docs...emListener.htmldamit das aber oben geht musst du die checkboxes wie variablen def. also mit private java.awt.Checkbox ivjCheckbox1 = new ...... Oben läuft das ganze halt noch mit setter und getter methoden ab. In deinem fall also ca so: ...
CheckboxGroup cbg1 = new CheckboxGroup();
...
private java.awt.Checkbox ivjCheckbox1 = new Checkbox("Spiel gegen Computer",cbg1,false);
danach in der Klasse die den Listener verwendet public void itemStateChanged(java.awt.event.ItemEvent e) {
if (e.getSource() == this.ivjCheckbox1 )
//mach irgendwas
}
das wars edit: Wenn du eine eigene Listener klasse verwenden willst musst du diese nat. auch anbinden ivjCheckbox1 .addItemListener(ivjEventHandler); //In meinem fall heisst sie halt so siehe oben wenn du es als inner class listener machen willst ivjCheckbox1.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent e) {
//mach was
};
});
Bearbeitet von crashman am 29.11.2003, 23:58
|