Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 28

Discussione: Problemi con JComboBox

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    10

    Problemi con JComboBox

    Salve a tutti sono nuovo del forum e spero possiate darmi una mano. Sono un neo studente di informatica che sta cercando di imparare le basi per programmare in Java e allo stesso tempo mi hanno chiesto di creare un programma per le miniature di Warhammer. Vado subito al problema senza descrivere tutto il programma.
    Tramite un jButton apro un jFrame secondario nel quale sono presenti tanti jComboBox (per chi ha dimestichezza con le miniature questa' e' la sezione fanteria dove sono presenti le varie squadre da dover scegliere) io ho bisogno di fare questo:

    ho 6 combobox nel quale ad ogni uno ho il riferimento di quanti omini per unita' posso avere (es: 0 oppure un numero tra 6 e 12) ogni uno di questi numeri dovrebbe essere moltiplicato per 10 (punteggio per la singola unita') e registrato in un contattore a fine griglia. Il contattore pero' mi dovrebbe contenere la somma della selezione di tutti e 6 i combobox. In allegato aggiungo una immagine di come ho impostato la pagina. Intanto spero di essere stato abbastanza chiaro sulla mia richiesta e soprattutto spero di non aver commesso infrazioni. Grazie
    Immagini allegate Immagini allegate

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Benvenuto sul forum. Ok, e la domanda è?
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    10
    mmm rileggendo ho visto che mi e' partito via un pezzo di frase -.-"
    la domanda sarebbe come faccio a far si che il valore di combobox (come nell'esempio da 6 a 12) venga prima moltiplicato per un numero , in questo caso 10, e poi riportato nel contattore dove verranno poi sommati tutti i valori di tutte le 6 combobox?

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    ok, allora conviene cominciare dalle basi (come per ogni altra cosa): dovresti registrare un Action Listener sulle JComboBox che si occupi di fare i conti.

    Comincia da qui:

    http://docs.oracle.com/javase/tutori.../combobox.html
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    anzi, scusa, ti ho detto una frescaccia. Per farla più semplice, conviene che l'ActionListener lo attacchi al pulsante che inizia il calcolo, e questo andrà a prendersi i valori delle combo box e farà i conti.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    10
    In che senso? devo creare un actionListener all'interno del contattore? io nell'altra pagina per far aumentare il contattore usavo questa formula:

    this.qgContatore.setText(Integer.toString(variabil e));

  7. #7
    Infatti basta aprirti un actionListener sul jButton e poi farti le tue operazioni

    codice:
    jButton.addActionListener(new ActionListener(){
          public void actionPerformed(ActionEvent e){
              operazioni();
         }
    });
    
    private void operazioni(){
       int variabile=0;
       variabile += (Integer.parseInt(jCombobox1.getSelectedItem())*moltiplicatore);
       variabile += (Integer.parseInt(jCombobox2.getSelectedItem())*moltiplicatore);
                                        |
                                        |
       ecc. ecc
       //alla fine
       this.qgContatore.setText(Integer.toString(variabile));
    }
    Ciao
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    10
    Ma il problema e' che io non ho un jButton ma una Combobox con all'interno il numero di unita' disponibili e la mia situazione e' quella che nell'immagine postata nel primo post

  9. #9
    Il concetto che ancora non hai espresso e se questo contatore lo devi aggiornare appena selezioni un nuovo valore oppure solo alla fine quindi suppongo quando premi il bottone equip ?

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    10
    No il bottone equip in realta' apre una nuova pagina contenente gli equipaggiamenti di quello che viene selezionato. Il valore del contatore si deve aggiornare appena io seleziono la combobox.
    Cioe' se io nella prima cambio da 0 a 6, automaticamente nel contatore dovrebbe visualizzarmi 60.


    Il codie dovrebbe essere piu' o meno questo :


    private void tp1ContatoreActionPerformed(java.awt.event.ActionE vent evt) {
    combo_fw1.addActionListener(new ActionListener (){
    public void actionPerformed (ActionEvent e){
    operazioni();
    }
    });
    }


    private void operazioni(){
    int variabile = 0;
    variabile += (Integer.parseString(combo_fw1.getSelectedItem())* 10);
    variabile += (Integer.parseString(combo_kt1.getSelectedItem())* 10);
    this.tp1Contatore.setText(Integer.toString(variabi le));
    }

    pero' netbeans mi sottolinea parseString ( nel codice che mi era stato consigliato avevo parseInt pero' mi dava tutto sbagliato perche' da quel che ho capito nella combobox io ho un array di stringhe )

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 © 2025 vBulletin Solutions, Inc. All rights reserved.