Autore Topic: Come governare un bottone in evento Click  (Letto 3009 volte)

Offline Franco_da_vc

  • Grande Gambero
  • ***
  • Post: 215
  • Non è mai troppo tardi!
    • Mostra profilo
Re: Come governare un bottone in evento Click
« Risposta #15 il: 23 Agosto 2017, 12:07:02 »
Cio che dici Gianluigi mi trova comunque d'accordo
Io mi sto perdendo, non capisco cosa vuoi dire.
Qualunque evento se scatenato è in grado di cambiare i colori di fondo.
Se vuoi che ti possa aiutare dovresti descrivere, l'algoritmo che stai inseguendo, nella maniera più semplificata possibile ma che possa consentirmi di capire.
Qualcosa tipo l'ipotesi che ho fatto io.

 :ciao:
In effetti, a rigor di logica, la realtà e quella che tu scrivi: qualsiasi evento se scatenato è in grado di cambiare i colori di fondo, ma sperimentalmente ciò non si verifica, la casistica che ho verifcato è questa:
Codice: [Seleziona]
Quando viene attivato il bottone Carico sarta viene anche settato il colore rosso di sfondo, poi volendo cliccare il pulsante porto il puntatore sullo stesso, questo reagisce diventando azzurro, potrebbe essere questo il comportamento che interferisce, e quindi clicco, a questo punto si scatena l'evento _click, intervengono le due istruzioni che scambiano i settaggi sia della variabile che della colorazione dello sfondo, spostando il mouse la colorazione cambia in verde, e fin qui pare tutto regolare, ma probabilmente non è così perché torno sul pulsante, questo di nuovo diventa azzurro e clicco una seconda volta, di nuovo si scatena l'evento _click, ma spostandomi con il mouse la colorazione del pulsante rimane verde e non segue più il mutare della variabile

Ciao Gianluigi e grazie!
Bye by Afo

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #16 il: 23 Agosto 2017, 13:32:00 »
Ti allego un esempio
ciao

P.S. L'ho provato ora funziona
« Ultima modifica: 23 Agosto 2017, 16:50:52 da Gianluigi »
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Franco_da_vc

  • Grande Gambero
  • ***
  • Post: 215
  • Non è mai troppo tardi!
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #17 il: 23 Agosto 2017, 14:32:10 »
Ti allego un esempio
ciao

Ciao GianLuigi, ho provato a scaricare il tuo esempio, ma una volta scompattato il file risulta una directory vuota (secondo l'ide) in verità ho provato a vedere ma effettivamente ci ho trovato solo file nascosti,

In ogni caso grazie.
« Ultima modifica: 23 Agosto 2017, 14:32:44 da Franco_da_vc »
Bye by Afo

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #18 il: 23 Agosto 2017, 16:41:37 »
Ti allego un esempio
ciao

Ciao GianLuigi, ho provato a scaricare il tuo esempio, ma una volta scompattato il file risulta una directory vuota (secondo l'ide) in verità ho provato a vedere ma effettivamente ci ho trovato solo file nascosti,

In ogni caso grazie.

Boh  :-\ riprova a scaricarlo che io l'ho ricaricato nuovamente.

 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Franco_da_vc

  • Grande Gambero
  • ***
  • Post: 215
  • Non è mai troppo tardi!
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #19 il: 24 Agosto 2017, 15:40:35 »
Ciao GianLuigi e Vuott... e naturalmente a tutto il forum.

mi scuso se ho un po' lasciato cadere la discussione, ma nel frattime ho portato aventi altri pezzi di programma che però mi hanno introdotto una nuova rifflessione, ho appena terminato con un buon esito di codificare una nuova Sub: ButtonConfermaFacit_Click(), anch'essa come la precedente contiene una istruzione ButtonConfermaFacit.Background = &FF0000, in questo caso però il tutto funziona contrariamente a quanto succede nella precedente ButtonCaricoSarta_Click().

L'unica differenza tra le due routine è che quest'ultima è molto più complessa e quindi lunga da eseguire, impegna quindi molti più tempi macchina, mentre la precedente è molto più diretta e veloce.

Forse è quindi per questi motivi che si verifica il problema!

Che ne dite?

Ciaooooo  :ciao:
« Ultima modifica: 24 Agosto 2017, 15:41:53 da Franco_da_vc »
Bye by Afo

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.705
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #20 il: 24 Agosto 2017, 16:27:00 »
Che ne dite?
Dico, o meglio, torno a dirti che è opportuno che tu alleghi un piccolo e semplice progetto (come ha fatto Gianluigi per aiutarti) riproducente il problema che fino ad ora hai sollevato.
Diversamente sarà difficile aiutarti.
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Franco_da_vc

  • Grande Gambero
  • ***
  • Post: 215
  • Non è mai troppo tardi!
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #21 il: 24 Agosto 2017, 21:20:52 »
Facciamo un'ipotesi di algoritmo, io carico attraverso delle textbox, dei checkbox e dei combobox i dati per la sarta, se il pulsante che valuta (penso sia caricosarta) valuta  che tutti gli inserimenti vanno bene allora cambierà lo stato del booleano a true altrimenti a false. Ma prima del valutatore che sarà posta in fondo alla routine e che dovrà solo vedere se il booleano è a true o false e in base a questo cambiare il colore  e basta.

Come ho avuto modo di poter spiegare in un messaggio privato spedito oggi a GianLuigi, e come sperro di spiegarmi altrettanto bene ora, il pulsante Carico sarta non serve ad altro che a settare un flag che dice: "Questa lavorazione è a carico della sarta" ma non fa altre valutazioni, il fatto che volevo cambiare il background era solo per avere graficamente la visione che si era settato il flag, niente di più.

Codice: [Seleziona]
Public Sub ButtonCaricoSarta_Click()
'############################################################# Inserimento / disinserimento del flag CARICO SARTA #####

  If SwSart = False
    SwSart = True
    ButtonCaricoSarta.Background = &00FF00
  Else
    SwSart = False
    ButtonCaricoSarta.Background = &FF0000
  Endif

End

In poche parole quando si va a schiacciare quel pulsante il programma si chiede in che condizione è lo switch SwSart e lo modifica di conseguenza colorando il pulsante di verde se il flag diventa attivo (true) o di rosso se diventa passivo (false); tutto ciò per poter avere il controllo su quella condizione prima della conferma di quella parte di inserimenti.

Se vedete lo scrrenshoot allegato potrete individuare i dati come N.Capi, Nominativo ed il pulsante Carico Sarta.

Dopo quella conferma i dati succitati (compreso lo stato del flag) verranno memorizzati in un Array generale ove vengono registrati tutti i dati del D.D.T. in corso, naturalmente a termine bolla questi dati verranno stampati (in questo momento su un modulo a snap-out di una nota ditta di materiale per ufficio) e poi registrati in un apposito file.

Volendovela dire tutta ci sarà poi un secondo programma che analizzerà il file registrato e da quello ricaverà una fattura mensile per ogni negozio.

Questo è il progetto che sto cercando di sviluppare e che già gira su una evoluzione di un computer Sinclari Ql.

Comunque come segnalo nella risposta n. 15 ho trovato un palliativo per recuperare almeno parzialmente la funzionalità del pulsante, il problema e che se voglio poter avere la possibilità di modificare il pulsante non devo perdere il fuoco verso il pulsante di conferma.

Ringrazio tutti per la pazienza.

Caioooo  :ciao:
Bye by Afo

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #22 il: 24 Agosto 2017, 22:48:52 »
E infatti io ti ho risposto che avevi spiegato solo adesso che la mia ipotesi di algoritmo era sbagliata.
OK ma non è che poi tu ci spieghi cosa vai cercando, continui a proporre lo stesso codice e la stessa immagine come se fosse sufficiente a farci capire.
Sia Vuott che io ti abbiamo invitato a esemplificare il tutto con un codice limitato al problema, se lo puoi fare bene, altrimenti cosa vuoi che ti rispondiamo...

Ad esempio una cosa veramente incomprensibile per me è che ci sia un pulsante il cui unico scopo è variare un booleano e cambiare il proprio colore, questo mi fa pensare che ci sia qualcosa che non va nell'algoritmo.
Sembra che ci sia bisogno dell'operatore a controllare che le cose siano giuste e non il programma stesso, un po come se il lavoro fosse fatto a mano e non da un'intelligenza artificiale.
 :ciao:

P.S. Ho rimosso la risposta come mi avevi indicato.
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.705
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #23 il: 24 Agosto 2017, 23:55:15 »
" ......
  Le corde stridono,
  La voce manca,
  Sul ponte sventola
  Bandiera bianca !
"

   
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Arco

  • Gambero
  • **
  • Post: 93
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #24 il: 25 Agosto 2017, 08:52:41 »
Citazione
Dopo quella conferma i dati succitati (compreso lo stato del flag) verranno memorizzati in un Array generale ove vengono registrati tutti i dati del D.D.T. in corso, naturalmente a termine bolla questi dati verranno stampati (in questo momento su un modulo a snap-out di una nota ditta di materiale per ufficio) e poi registrati in un apposito file.
Spero di aver capito, almeno in parte il tuo problema.
Da quello che scrivi io ho capito che prima va premuto il pulsante carico sarta e poi vengono memorizzati i dati inseriti.
Io modificherei la Public Sub ButtonCaricoSarta_Click() inserendo prima un controllo se sono stati inseriti tutti i dati richiesti e poi cambierei il flag SwSart e procedere successivamente alla memorizzazione dei dati.
Spero di essere stato di aiuto.

Offline Franco_da_vc

  • Grande Gambero
  • ***
  • Post: 215
  • Non è mai troppo tardi!
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #25 il: 25 Agosto 2017, 11:31:56 »
In ogni caso vi ringrazio della vostra pazienza....

Ad esempio una cosa veramente incomprensibile per me è che ci sia un pulsante il cui unico scopo è variare un booleano e cambiare il proprio colore, questo mi fa pensare che ci sia qualcosa che non va nell'algoritmo.
Sembra che ci sia bisogno dell'operatore a controllare che le cose siano giuste e non il programma stesso, un po come se il lavoro fosse fatto a mano e non da un'intelligenza artificiale.

È questo il punto su cui ci stiamo incagliando, il controllo sulla correttezza dei dati è riservato all'operatore e non alla macchina, in fondo siamo davanti ad un data entry, come può la macchina controllare se un lavoro e a carico sarta o a carico negozio? A noi arrivano i vari capi con dei foglietti attaccato ove c'è scritto la lavorazione da eseguire ed a carico di chi (va detto che i carico sarta sono sempre più rari) ed attraverso a questo programma facciamo partire il processo informatico.

Mi rendo conto che invece di un pulsante si poteva descrivere una Ceck Box o un Toogle Button, la mia scelta era ricaduta su un pulsante solo perché in quel modo è stato fatto il precedente programma, e per funzionare funziona, l'unica cosa è questo problema del cambio colore che mi sta un po' bloccando, vorrei comunque provare ad usare un Toogle Button per vedere cosa succede.

Grazie a tutti

Ciaoooo :ciao:
Bye by Afo

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #26 il: 25 Agosto 2017, 11:42:26 »
come può la macchina controllare se un lavoro e a carico sarta o a carico negozio?

Semplice, valutando i dati di inserimento, non serve nessun intervento umano tranne quello dell'inserimento dati.

 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Franco_da_vc

  • Grande Gambero
  • ***
  • Post: 215
  • Non è mai troppo tardi!
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #27 il: 25 Agosto 2017, 11:42:54 »
Grazie Arco,

Spero di aver capito, almeno in parte il tuo problema.
Da quello che scrivi io ho capito che prima va premuto il pulsante carico sarta e poi vengono memorizzati i dati inseriti.
Io modificherei la Public Sub ButtonCaricoSarta_Click() inserendo prima un controllo se sono stati inseriti tutti i dati richiesti e poi cambierei il flag SwSart e procedere successivamente alla memorizzazione dei dati.
Spero di essere stato di aiuto.

In modo di porre come ultima operazione l'attivazione del Carico Sarta o meno, poi la conferma, in effetti ci può stare, così il sistema è un po' più controllato.

in effetti questo programma non eccelle per i controlli sugli input presenti, va detto che è usato da poche persone (due) che ormai non commettono più errori nel data entry.
Bye by Afo

Offline Arco

  • Gambero
  • **
  • Post: 93
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #28 il: 25 Agosto 2017, 11:45:24 »
Forse non capisco io ma dall'immagine postata io vedo un sacco di informazioni che il computer può controllare se inserite tipo numero, data, cliente, ecc.
E' sempre meglio effettuare i controlli sugli input.
« Ultima modifica: 25 Agosto 2017, 11:47:08 da Arco »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Come governare un bottone in evento Click
« Risposta #29 il: 25 Agosto 2017, 11:48:30 »
Forse non capisco io ma dall'immagine postata io vedo un sacco di informazioni che il computer può controllare se inserite tipo numero, data, cliente, ecc.

Infatti!

Te lo ripeto l'algoritmo del vecchio programma andrebbe cambiato in meglio e non ricopiato, altrimenti ti basta continuare con il vecchio.
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro