[JAVA][RISOLTO] Operazioni su caselle di testo
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.
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.
- Delcaran Lëdeloth
- Linux 1.x
- Messaggi: 132
- Iscritto il: mar 27 mag 2008, 8:24
- Nome Cognome: Matteo Paoluzzi
- Slackware: 14.2 - 64bit
- Kernel: 4.4.111 generic
- Desktop: i3
- Località: ud.fvg.it
- Contatta:
[JAVA][RISOLTO] Operazioni su caselle di testo
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!!!
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 14 lug 2009, 11:08, modificato 1 volta in totale.
Find me at Keybase
Slackware user since 1997.
Slackware user since 1997.
- Mercyful
- Linux 1.x
- Messaggi: 196
- Iscritto il: ven 25 lug 2008, 18:20
- Nome Cognome: Ilario Pittau
- Slackware: 13.0
- Kernel: 2.6.29.6-generic
- Desktop: xfce 4.6
- Località: Torino
Re: [JAVA] Operazioni su caselle di testo
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?
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?
- Delcaran Lëdeloth
- Linux 1.x
- Messaggi: 132
- Iscritto il: mar 27 mag 2008, 8:24
- Nome Cognome: Matteo Paoluzzi
- Slackware: 14.2 - 64bit
- Kernel: 4.4.111 generic
- Desktop: i3
- Località: ud.fvg.it
- Contatta:
Re: [JAVA] Operazioni su caselle di testo
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...
Find me at Keybase
Slackware user since 1997.
Slackware user since 1997.
- Mercyful
- Linux 1.x
- Messaggi: 196
- Iscritto il: ven 25 lug 2008, 18:20
- Nome Cognome: Ilario Pittau
- Slackware: 13.0
- Kernel: 2.6.29.6-generic
- Desktop: xfce 4.6
- Località: Torino
Re: [JAVA] Operazioni su caselle di testo
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!
Se programmi solamente usando la grafica non lo vedi.. guarda bene anche il codice!
- ulisse89
- Packager
- Messaggi: 643
- Iscritto il: sab 17 gen 2009, 12:53
- Nome Cognome: Riccardo
- Slackware: 13.0
- Kernel: 2.6.29.6
- Desktop: Xfce
- Località: Bologna
Re: [JAVA] Operazioni su caselle di testo
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.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!
- Delcaran Lëdeloth
- Linux 1.x
- Messaggi: 132
- Iscritto il: mar 27 mag 2008, 8:24
- Nome Cognome: Matteo Paoluzzi
- Slackware: 14.2 - 64bit
- Kernel: 4.4.111 generic
- Desktop: i3
- Località: ud.fvg.it
- Contatta:
Re: [JAVA] Operazioni su caselle di testo
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
Da programmatore C con anni di esperienza dovevo capirlo subito che con il codice si fa prima
Chiedo venia e mi metto a lavoro!
Ho compreso tutto e ho visto che è piuttosto semplice come storia...ora come ora mi sento decisamente stupido ad aver fatto una simile domanda
Da programmatore C con anni di esperienza dovevo capirlo subito che con il codice si fa prima
Chiedo venia e mi metto a lavoro!
Find me at Keybase
Slackware user since 1997.
Slackware user since 1997.