Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    [J2ME] Radio Button multipli

    Salve ragazzi.
    Volevo chiedervi se sapete darmi una mano in questo senso...
    ho una MIDLET che deve prelevare informazioni attraverso i radio button quindi con un unica scelta da ogni domanda...
    il programma è questo:



    import javax.microedition.lcdui.*;
    import javax.microedition.midlet.*;

    public class Quiz extends MIDlet implements CommandListener{
    private Display display;
    private Command exit, submit;
    private List list;

    public Quiz(){
    exit = new Command("Exit", Command.EXIT, 1);
    submit = new Command("Submit", Command.SCREEN, 2);
    list = new List("Sex", List.EXCLUSIVE);
    }

    public void startApp(){
    display = Display.getDisplay(this);
    list.append("Male", null);
    list.append("Female", null);
    list.addCommand(exit);
    list.addCommand(submit);
    list.setCommandListener(this);
    display.setCurrent(list);
    }

    public void pauseApp(){}

    public void destroyApp(boolean unconditional){
    notifyDestroyed();
    }

    public void showMsg(){
    Alert alert = new Alert("Select",
    list.getString(list.getSelectedIndex()), null, null);

    display.setCurrent(alert);
    list.removeCommand(submit);
    }

    public void commandAction(Command c, Displayable Displayable){
    String label = c.getLabel();
    if (label.equals("Submit")){
    showMsg();
    } else if (label.equals("Exit")){
    destroyApp(false);
    }
    }
    }




    Cosa devo fare per poter inserire in unica screen più domande invece di 1 sola?(in qsto esempio viene chiesto il sesso)

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Il codice si posta tra CODE e /CODE in modo che mantenga l'indentazione, non in grasseto! Così è abbastanza illeggibile
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    vorrei creare una cosa tipo qsta:



    è possibile farlo in 1 midlet sola?

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    36
    Ciao,
    prova con ChoiceGroup.

  5. #5
    io intendo qsto:

    QUANTO TI PIACCIONO I FILM ROMANTICI?(da 1 a 5)
    1
    2
    3
    4
    5

    QUANTO TI PIACCIONO I FILM D'AZIONE?(da 1 a 5)
    1
    2
    3
    4
    5


    tt qsto in un unica midlet...si puo fare?ovviamente per ogni domanda una solo risposta.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    36
    Ciao,
    penso che ChoiceGroup.EXCLUSIVE faccia al caso tuo.

  7. #7
    ok grz...ci provero

  8. #8
    allora...sono riuscito a mettere 2 CHOICE GROUP in un unica midlet...posto il codice:

    codice:
    import javax.microedition.midlet.*;
    import javax.microedition.lcdui.*;
    
    public class quiz2 extends MIDlet implements ItemStateListener, CommandListener
    {
      private Display display;      // Reference to display object
      private Form fmMain;          // The main form
      private Form fmMain2;
      private Command cmExit;      // A Command to exit the MIDlet
      private Command cmView;      // View the choice selected
      private ChoiceGroup cgEmail,cgEmail2; // Choice group
      private int replyIndex,replyIndex2;       // Index of "reply" in choice group
      private int choiceGroupIndex,choiceGroupIndex2; // Index of choice group on form
    
    
      public quiz2()
      {
        display = Display.getDisplay(this);
    
        // Create an exclusive (radio) choice group
        cgEmail = new ChoiceGroup("Email Options", Choice.EXCLUSIVE);
        cgEmail2 = new ChoiceGroup("Options", Choice.EXCLUSIVE);
    
    
        // Append options, with no associated images
        cgEmail.append("Read", null);
        replyIndex = cgEmail.append("Reply", null);
        cgEmail.append("Forward", null);
        cgEmail.append("Delete", null);
    
        // Set "reply" as the default/selected option
        cgEmail.setSelectedIndex(replyIndex, true);
    
        // Append options, with no associated images
        cgEmail2.append("dsasd", null);
        replyIndex2 = cgEmail2.append("sdly", null);
        cgEmail2.append("asd", null);
        cgEmail2.append("Forsdward", null);
    
        // Set "reply" as the default/selected option
        cgEmail2.setSelectedIndex(replyIndex2, true);
    
    
        cmExit = new Command("Exit", Command.EXIT, 1);
        cmView = new Command("View", Command.SCREEN,2);
    
        // Create Form, add components, listen for events
        fmMain = new Form("");
        choiceGroupIndex = fmMain.append(cgEmail);
        choiceGroupIndex2 = fmMain.append(cgEmail2);
        fmMain.addCommand(cmExit);
        fmMain.addCommand(cmView);
        fmMain.setCommandListener(this);
      }
    
      // Called by application manager to start the MIDlet.
      public void startApp()
      {
        display.setCurrent(fmMain);
      }
    
      public void pauseApp()
      { }
    
      public void destroyApp(boolean unconditional)
      { }
    
      public void commandAction(Command c, Displayable s)
      {
        if (c == cmView)
        {
          // Build a string showing which option was selected
          /*StringItem stiMessage = new StringItem("You selected: ", cgEmail.getString(cgEmail.getSelectedIndex()));
          StringItem stiMessage2 = new StringItem("You selected: ", cgEmail2.getString(cgEmail2.getSelectedIndex()));
          fmMain.append(stiMessage);
          fmMain.append(stiMessage2);*/
    
          StringItem stiMessage = new StringItem("You selected: ", cgEmail.getString(cgEmail.getSelectedIndex()));
          fmMain.append(stiMessage);
    
          
          // Delete the choice group & view button
          fmMain.delete(choiceGroupIndex);
          fmMain.delete(choiceGroupIndex2);
          fmMain.removeCommand(cmView);
        }
        else if (c == cmExit)
        {
          destroyApp(false);
          notifyDestroyed();
        }
      }
    
      public void itemStateChanged(Item item)
      {
      }
    }

    ora pero la StringItem stiMessage nn mi restituisce nessun risultato...cm se l'indice non fosse memorizzato...mentre se lo faccio per la seconda CHOICEGROUP mi da il risultato..cosè che nn va?

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    36
    Ciao,
    prova inserendo questo nel commandAction:
    codice:
     if (c == cmView)
        {
          StringItem stiMessage = new StringItem("First you selected: ", cgEmail.getString(cgEmail.getSelectedIndex()));
          StringItem stiMessage2 = new StringItem("Second you selected: ", cgEmail2.getString(cgEmail2.getSelectedIndex()));
          fmMain2.append(stiMessage);
          fmMain2.append(stiMessage2);
          display.setCurrent(fmMain2);
        }
        else if (c == cmExit)
        {
          destroyApp(false);
          notifyDestroyed();
        }

  10. #10
    ora mi mostra solo la prima scelta...ma nn la seconda...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.