Repository 32bit  Forum
Repository 64bit  Wiki

[JAVA][RISOLTO] Operazioni su caselle di testo

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

[JAVA][RISOLTO] Operazioni su caselle di testo

Messaggioda Delcaran Lëdeloth » lun lug 13, 2009 14:10

Salve a tutti! Sto progettando una GUI in Java utilizzando NetBeans 6.7, e ho notato con piacere che mi semplifica notevolmente la gestione della grafica e di alcune proprietà degli elementi. Quando riesco a risolvere questo piccolo problema sono molto più rilassato!
Allora, la mia GUI è composta principalmente da caselle di testo JTextField, alcune editabili e altre no. Quelle non editabili sono collegate ad una o più caselle editabili. Quando sono collegate ad una sola editabile ho bindato la loro proprietà text alla proprietà text della casella a cui sono collegate, e ottengo come desiderato che la casella collegata contiene lo stesso valore della casella a cui è collegata. Ora il mio dubbio...quando devo collegare una casella a più caselle??? Per esempio, mettiamo che la casella A sia uguale a B+C, oppure a B/2 (sono queste operazioni basilari che mi interessano) e che tutte le caselle contengano solo valori interi (come infatti è) positivi o negativi, come faccio a fare in modo che A assuma il valore corretto?
Altro problema. Dovrei mettere una checkbox collegata ad una casella di testo: quando la checkbox è selezionata, il valore della casella di testo viene aumentato di +5, altrimenti no. Il valore della casella di testo, oltre che alla checkbox, dipende anche da un'altra casella di testo.
Ammetto che tutto quello che ho fatto l'ho fatto utilizzando NetBeans, perché la mia conoscenza di Swing è pressoché nulla... grazie a tutti!!!
Ultima modifica di Delcaran Lëdeloth il mar lug 14, 2009 10:08, modificato 1 volta in totale.
Avatar utente
Delcaran Lëdeloth
Linux 2.0
Linux 2.0
 
Messaggi: 107
Iscritto il: mar mag 27, 2008 7:24
Località: Orsaria
Nome Cognome: Matteo Paoluzzi
Slackware: slackware-current
Kernel: 2.6.29.6-smp
Desktop: KDE 4.3.3

Re: [JAVA] Operazioni su caselle di testo

Messaggioda Mercyful » lun lug 13, 2009 15:31

Ciao,
Per renderlo efficace potresti utilizzare i Listener e gli eventi per gestire le modifiche delle caselle B e C e quando queste due hanno dei valori per te coerenti puoi riempire il campo A.text..
Potrebbe essere una soluzione?
Avatar utente
Mercyful
Linux 2.0
Linux 2.0
 
Messaggi: 196
Iscritto il: ven lug 25, 2008 17:20
Località: Torino
Nome Cognome: Ilario Pittau
Slackware: 13.0
Kernel: 2.6.29.6-generic
Desktop: xfce 4.6

Re: [JAVA] Operazioni su caselle di testo

Messaggioda Delcaran Lëdeloth » lun lug 13, 2009 16:26

Si, pensavo di fare proprio una cosa del genere...una piccola funzione che cattura i valori di B e C.. Il mio dubbio era se questa funzione deve essere messa dentro B e C o dentro A o essere globale... Non riesco a capire se un evento che si verifica su una casella può richiamare un funzione di un'altra casella... Oppure se una casella può "catturare" un evento su un'altra casella...
Avatar utente
Delcaran Lëdeloth
Linux 2.0
Linux 2.0
 
Messaggi: 107
Iscritto il: mar mag 27, 2008 7:24
Località: Orsaria
Nome Cognome: Matteo Paoluzzi
Slackware: slackware-current
Kernel: 2.6.29.6-smp
Desktop: KDE 4.3.3

Re: [JAVA] Operazioni su caselle di testo

Messaggioda Mercyful » lun lug 13, 2009 16:40

Nel codice in cui istanzi le JTextField, nella classe che crea il form e il resto, li dentro devi implementare la logica per il funzionamento degli event sul onModify (penso si chiamino cosi) oppure onTextChange sono funzioni come onButtonClick e puoi accedere a tutti gli oggetti definiti nella stessa classe. quindi anche ad A , e C e gli altri..
Se programmi solamente usando la grafica non lo vedi.. guarda bene anche il codice!
Avatar utente
Mercyful
Linux 2.0
Linux 2.0
 
Messaggi: 196
Iscritto il: ven lug 25, 2008 17:20
Località: Torino
Nome Cognome: Ilario Pittau
Slackware: 13.0
Kernel: 2.6.29.6-generic
Desktop: xfce 4.6

Re: [JAVA] Operazioni su caselle di testo

Messaggioda ulisse89 » lun lug 13, 2009 19:30

Mercyful ha scritto:Nel codice in cui istanzi le JTextField, nella classe che crea il form e il resto, li dentro devi implementare la logica per il funzionamento degli event sul onModify (penso si chiamino cosi) oppure onTextChange sono funzioni come onButtonClick e puoi accedere a tutti gli oggetti definiti nella stessa classe. quindi anche ad A , e C e gli altri..
Se programmi solamente usando la grafica non lo vedi.. guarda bene anche il codice!

Esatto. La classe che implementa la gui, deve implementare ActionListener. Ogni componente che aggiungi alla finestra genera eventi per un tot di azioni che l'utente farà su di lui. Chi gestisce questi eventi è la classe che implementa ActionListener. In questa metterai un metodo actionPerformed(Event e) che prende in ingresso un evento generato da un componente e farà quello che vuoi tu. ActionListener può essere implementato anche da qualcun altra classe, ma ti conviene quella della GUI perchè come dice Mercyful hai accesso a tutti i componenti su cui agisci dopo un evento.
Avatar utente
ulisse89
Packager
Packager
 
Messaggi: 644
Iscritto il: sab gen 17, 2009 12:53
Località: Bologna
Nome Cognome: Riccardo
Slackware: 13.0
Kernel: 2.6.29.6
Desktop: Xfce

Re: [JAVA] Operazioni su caselle di testo

Messaggioda Delcaran Lëdeloth » mar lug 14, 2009 10:08

Ho rispolverato il manuale e ho eclissato tutti i miei dubbi in proposito :) da come l'avevano proposto in aula la faccenda sembrava decisamente più incasinata ;p
Ho compreso tutto e ho visto che è piuttosto semplice come storia...ora come ora mi sento decisamente stupido ad aver fatto una simile domanda :oops:
Da programmatore C con anni di esperienza dovevo capirlo subito che con il codice si fa prima :roll:
Chiedo venia e mi metto a lavoro!
Avatar utente
Delcaran Lëdeloth
Linux 2.0
Linux 2.0
 
Messaggi: 107
Iscritto il: mar mag 27, 2008 7:24
Località: Orsaria
Nome Cognome: Matteo Paoluzzi
Slackware: slackware-current
Kernel: 2.6.29.6-smp
Desktop: KDE 4.3.3


Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

cron