@ desadex
Ho creato una classe che simula un message form. In realtà essa non è ancora completa perchè per ora hai un form non ridimensionabile, un solo button, a differenza dei tre classici che propone il message di gambas, e c'è il solo form warning per ora!!
HO chiamato questa classe extramessage...:-)
Per importarla usa:
extramessage AS NEW estramessage
Da usare e semplicissima...dove vorresti che apparisse il message classico usa la mia classe con la sintassi
extramessage.warning(messaggio, button, x, y)
ricordando che:
messaggio è una stringa per impostare il messaggio da visualizzare;
button è il testo che vuoi che appaia nel button sul form;
x e y sono opzionali e sono due interi che indicano la posizione del form nel desktop. Se non specifichi questi due parametri il form sarà centrato automaticamente.
Spero che il mio lavoro sino a cui ti torni utile. Se la cosa è buona allora continuo lo sviluppo. Ora devo fermarmi perchè come vedi sono le 5 del mattino e vado a dormire un pò....
Fammi sapere....
Auguri anche a te..
Ho aggiunto i due button che mancavano...
Ora infatti è possibile identificare anche il secondo e terzo button...
extramessage.warning(messaggio, button1, button2, button3 x, y)
I parametri di prima restano uguali...ora hai anche button2 e button3 che sono opzionali e sono il testo che vuoi che appaia nei rispettivi button.
Ovviamente se non indichi button2 o button3 essi non appaiono ma appare solo button1 o solo button1 e button2.
Spero di essere stato chiaro...
Per ora hai solo il form warning e non è ridimensionabile..per queste cose vedremo dopo...
DIMENTICAVO: ho aggiunto una funzione leggi in modo che tu sappia quale è stato l'ultimo button premuto.
La puoi leggere con
extramessage.leggi()
In questo modo in base alla scelta del'utente fai ciò che devi fare. Essa restituisce:
0 -> primo button
1 -> secondo button
2 -> terzo button
@ ceskho
va alla grande.
volevo chiederti:
per le icone non è possibile inserire ad esempio:
extramessage.warning(messaggio, button1, button2, button3,icona, x, y)
in modo da richiamare varie immagini?
per extramessage.leggi()
ho visto che mi ritorna il valore del button, ma per fare una cosa simile come si fà?
if message.warning(testo,button1,button2) = 1 then
Le icone sono le stesse che usa gambas di default per i messagge..se inserisco la possibilità di specificare l'icona allora non ha più senso la distinzione tra i vari tipi di message.
per usare leggi puoi fare ad esempio
extramessage.info("vuoi chiudere il programma?" , "Si", "No")
IF extramessage.leggi() = 0 THEN Form.Close
ma con
extramessage.info("vuoi chiudere il programma?" , "Si", "No")
va in errore
TRY operazione_da_fare
IF ERROR THEN extramessage.error(error.text, "Ok")
@ceskho
il codice seguente non mi entra nella struttura if
PUBLIC SUB Button1_Click()
extramessage.Delete(M1.MyNamA & " Vuoi eliminare questo Record?", "Annulla", "Elimina")
IF extramessage.leggi() = 1 THEN
codice da eseguire
END IF
END
in pratica nella sub essendo sequenziale il result è 0 di default e non entra nell if
che nella sub button1_click anche se premo il secondo button non entra nella struttura if e non esegue il codice
prova ad inserire questo codice in un form e noterai che non entra nell'if
PUBLIC SUB Button1_Click()
extramessage.Delete("Vuoi eliminare questo Record?", "Annulla", "Elimina")
IF extramessage.leggi() = 1 THEN
message.info("codice eseguito")
END IF
END