[Java] Frage zu Awt-Komponente

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Johnny990, 4. März 2007 .

Schlagworte:
  1. 4. März 2007
    Servus zusammen!!!

    Hab ne kleine Frage!

    zuerst mal der Code:

    Code:
    import java.applet.*;
    import java.awt.*;
    import java.awt.event.*;
    
    
    public class Appletbsasd extends Applet implements ItemListener
    {
     public void init()
     {
     setBackground(Color.pink);
     
     Choice c = new Choice();
     c.addItem("Blau");
     c.addItem("Grau");
     c.addItemListener(this);
     add(c);
     }
     
     
     public void itemStateChanged(ItemEvent i)
     {
     if(i.getItem().equals("Blau"))
     setBackground(Color.BLUE);
     if(i.getItem().equals("Grau"))
     setBackground(Color.lightGray);
     }
     
    
    }
    So ich hab also ne auswahlliste mit der ich die Hintergrundfarbe des Applets ändern kann!
    Jetzt wenn ich das applet öffne steht da in der liste gleich als anfangswert Blau drin! Wie kann ich das ändern, das die Liste am anfang leer ist ud ich dann erst auswähle???


    Vielen Dank jetzt schon mal!!!

    und vielleicht noch was wo ich schon beim fragen bin! Wenn ich ne Checkbox mache(Die nur true oder false sein kann bzw geklickt oder nicht angeklickt)! Was ist da das Actionevent dazu??? Kann mir mal vielleicht einer ein kleines Beispiel geben!

    Und zweitens! Wenn ich ne Auswahliste mache (zb Mann oder Frau) und will das jetzt quasi mit mehreren Checkboxen (ja oder Nein) verbinden. wie mach ich das?? also in worten als beispiel: "wenn Mann angeklickt ist und eine (bestimmte) checkbox mit ja , dann mach ......

    Bewertung versteht sich von selbst




    //Edit! Sorry für den Doppelpost War versehen
     
  2. 4. März 2007
    AW: Frage zu Awt-Komponente

    moin johnny

    also ich wieß nicht ob ich dir das schonmal ans Herz gelegt habe, aber die Java Insel ist eine sehr schöne völlig kostenlose Referenz für Java-Programmierung (http://www.galileocomputing.de/openbook/javainsel6/)

    dort steht auch ein schönes Kapitel über Checkboxen: http://www.galileocomputing.de/openbook/javainsel6/javainsel_14_011.htm#mja94eca139cdea9ac09a69d773f6c4594

    Aber zu deinem Problem.. Ich denke einfach, dass hier ein Startwert notwendig ist offensichtlich, jedenfalls kenn ich jetzt grad keine Lösung dafür, kann mich auch täuscvhen dass es geht dann helft dem Johnny wenn ihrs wisst.

    greetz schiene
     
  3. 4. März 2007
    AW: Frage zu Awt-Komponente

    Also ich habs jetzt nicht getestet aber ich würde einfach mal sagen du machst es so:
    Code:
    [...]
     Choice c = new Choice();
     c.addItem("");
     c.addItem("Blau");
     c.addItem("Grau");
     c.select(0);
    Zum Thema Checkbox:
    Code:
    Checkbox b = new Checkbox("Checkme");
    b.addItemListener(this);
    [..]
     public void itemStateChanged(ItemEvent i)
     {
     if( i.getStateChange == ItemEvent.SELECTED )
     System.out.println("Ausgewählt");
     else
     System.out.println("Auswahl entfernt");
     }
    
    Die Frage zu zweitens versteh ich nicht lol Was willst du machen?
     
  4. 4. März 2007
    AW: Frage zu Awt-Komponente

    also mit c.select (0) gehts nicht.....

    zu der letzten frage:

    Ich hab erst ne auswahl in ner Choice Komponente ( zB männlich oder weiblich) in meinem Applet.

    und unter dieser Komponente hab ich mehrere Fragen die mit ja und nein in Checkbixen beantwortet werden können!
    wenn also zB männlich gewählt wurde muss ich andere Berechnungen (in meinem Fall) anstellen.
    Wie stell ich quasi ne Eventverbindung der Art if(männlich&& die Checkbox1 nein, die Checkbox2 ja usw), dann berechne .....

    zwischen Checkbox und Choice her????

    Hoff ich habs einigermaßen verständlich gemacht....

    Wär echt sehr dankbar für jegliche Hilfe!
     
  5. 4. März 2007
    AW: Frage zu Awt-Komponente

    Naja wichtiger als c.select(0); ist die Zeile
    Code:
    c.addItem(" ");
    Zu 2:
    Du wirst ja irgendwie sowas wie einen "Berechnen"-Knopf haben nehm ich mal fast an, wo der User drauf klickt wenn er alles eingestellt hat. Gibt mehrere Mögl.:
    1. Du setzt Variablen wenn die Events ausgelöst werden.
    Bsp:
    Code:
    [...]
    public class [...]
    {
     private boolean isMale;
     private boolean[] checkboxes;
    [...]
    
     public void itemStateChanged(ItemEvent i)
     {
     if( i.getItem() instanceof Choice ) //Wenn das Event vom Choice ausgelöst wurde
     {
     //Wenn Maennlich ausgewaehlt wurde: isMale = true
     isMale = ((Choice) i.getItem()).getSelectedItem().equals("Maennlich");
     }
     else if( i.getItem() instanceof Checkbox )
     {
     if( i.getItem().equals(checkbox0) )
     checkboxes[0] = checkbox0.getState();
     else if( i.getItem().equals(checkbox1) )
     checkboxes[1] = checkbox1.getState();
     else if( i.getItem().equals(checkbox2) )
     checkboxes[2] = checkbox2.getState();
     //usw....
     }
     }
    Dann kannst du am Ende einfach über die Variablen rausfinden was ausgewählt ist.
    2. Möglichkeit (vermutlich einfacher):
    Code:
    [......]
    //Methode die aufgerufen wird wenn der User bestätigt - ich geh einfach mal von actionPerformed aus
    //Fuer diese Methode muessen die Checkboxen und Choices klassenweit bekannt sein
    public void actionPerformed( ActionEvent e )
    {
     boolean isMale = choice0.getSelectedItem().equals("Maennlich");
     boolean check0 = checkbox0.getState();
     boolean check1 = checkbox1.getState();
     [..]
     if( isMale && check0 )
     if( check1) 
     [..]
     else
     [..]
     [..]
    }
     
  6. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.