Gambas-it
Gambas3 => Programmazione => Topic aperto da: sixam - 20 Giugno 2018, 12:21:51
-
Salve a tutti :ciao:
Sto iniziando poco a poco a scoprire Gambas, cercando di 'convertire' le esperienze in altri linguaggi (VB6 e VB.Net).
In allegato un piccolo esempio (un mini orologio), commenti e consigli su come migliorare sono graditi.
Bye by SixaM 8-]
-
:ciao: Bentrovato,
intanto ti consiglierei di usare il menu della IDE per creare un file compresso del tuo progetto.
Menu Progetto > Crea > Pacchetto sorgenti... (Ctrl+Alt+A)
Ho scaricato, ti farò sapere :)
:ciao: :ciao:
-
... commenti ...
Ciao,
volevo domandare due cose:
1) perché hai assegnato in modo "esplicito" il valore booleano "False" al parametro opzionale della procedura RefreshTime( ) ?
2) perché fai chiudere il programma con "Quit", anziché con il Metodo "Me.Close" ?
-
1) perché hai assegnato in modo "esplicito" il valore booleano "False" al parametro opzionale della procedura RefreshTime( ) ?
Forza dell'abitudine... aggiungendo un parametro ad una funzione che non ne aveva lo metto sempre come opzionale (con default) per non far esplodere le chiamate preesistenti. In questo caso (visto che la "chiamata preesistente" era una sola, è più corretto togliere il parametro opzionale e richiamare la funzione con il parametro sempre valorizzato.
2) perché fai chiudere il programma con "Quit", anziché con il Metodo "Me.Close" ?
Ehm... è il primo sistema che ho trovato...
Sto cmq già "lavorando" alla versione 2 (form e controlli creati via codice)
Grazie x le annotazioni
Bye by SixaM 8-]
-
Sto cmq già "lavorando" alla versione 2 (form e controlli creati via codice)
Ecco infatti la versione 2 (tutti i controlli sono creati via codice)
Bye by SixaM 8-]
P.S. Immagino tutti lo abbiano affrontato, ma per me attualmente lo scoglio maggiore è riportare in Gambas gli "automatismi" che avevo sviluppando in Vb....
-
Io ti sconsiglio di usare il codice per costruire le finestre.
La fase iniziale di un programma Gambas è tutta basata sul disegno.
Se cerchi nel forum ci sono discussioni in merito.
Poi Gambas offre funzioni che ti ritornano direttamente l'intero delle ore, minuti ecc. senza gli arzigogoli che hai usato, es. iOra = Hour(Now).
Poi potresti usare LCDLabel magari due una per l'ora in cifre e l'altra per le parole, tipo questo (vedi file allegato)
:ciao: :ciao:
-
Io ti sconsiglio di usare il codice per costruire le finestre.
La fase iniziale di un programma Gambas è tutta basata sul disegno.
Se cerchi nel forum ci sono discussioni in merito.
Immaginavo, era solo un test per esplorare le potenzialità dell'ambiente.
Poi Gambas offre funzioni che ti ritornano direttamente l'intero delle ore, minuti ecc. senza gli arzigogoli che hai usato, es. iOra = Hour(Now).
Quella parte l'ho copiata paro paro da un'applicativo VB...
Poi potresti usare LCDLabel magari due una per l'ora in cifre e l'altra per le parole, tipo questo (vedi file allegato)
Carino, ma non utile al mio scopo... la mia idea è di "scrivere" l'ora evidenziando solo alcune scritte e non altre. Non so se l'LCD Label offre la possibilità di avere parte del testo in un colore, e parte in un altro. Inoltre, scrivendo direttamente sulla DrawingArea non aggiungo componenti al progetto
Grazie cmq x le note
Bye by SixaM 8-]
-
Quella parte l'ho copiata paro paro da un'applicativo VB...
Non commettere però l'errore, come avviene sovente in tali casi, di scrivere in Gambas pensando in VB.
Come (immagino) sai, Gambas non è un adattamento di VB per Linux !
Molte volte possono esserci, sì, punti di stretta somiglianza, molte altre volte no.
-
Carino, ma non utile al mio scopo... la mia idea è di "scrivere" l'ora evidenziando solo alcune scritte e non altre. Non so se l'LCD Label offre la possibilità di avere parte del testo in un colore, e parte in un altro. Inoltre, scrivendo direttamente sulla DrawingArea non aggiungo componenti al progetto
Grazie cmq x le note
Bye by SixaM 8-]
Se lo scopo è scrivere l'ora in lettere, il risultato non è poi così male: Vedi allegato
Anche la tua DrawingArea è un componente e praticamente fa più o meno (meno) quello che fa LCDLabel.
:ciao: :ciao:
-
Se lo scopo è scrivere l'ora in lettere, il risultato non è poi così male: Vedi allegato
Anche la tua DrawingArea è un componente e praticamente fa più o meno (meno) quello che fa LCDLabel.
:ciao: :ciao:
E' carino, ma non mi consente di avere colori diversi sulla stessa linea. Il mio obiettivo era simulare un 'orologio' tipo l'immagine in allegato...
Bye by SixaM 8-]
P.S. So che anche la DrawingArea è un componente, nell'applicativo originale scrivevo direttamente sulla form, in Gambas (a quanto sembra) questo non si può fase (o meglio: non ho trovato un modo di farlo) :D
-
Non commettere però l'errore, come avviene sovente in tali casi, di scrivere in Gambas pensando in VB.
Come (immagino) sai, Gambas non è un adattamento di VB per Linux !
Lo so, è più o meno Basic ;D
E' infatti questo il mio problema ora... capire come fare quello che facevo prima
Bye by SixaM 8-]
-
Il mio obiettivo era simulare un 'orologio' tipo l'immagine in allegato...
Si lo avevo capito, ma già che c'ero ho voluto tirare giù un esempio Gambas like, così per gioco. :)
P.S. So che anche la DrawingArea è un componente, nell'applicativo originale scrivevo direttamente sulla form, in Gambas (a quanto sembra) questo non si può fase (o meglio: non ho trovato un modo di farlo) :D
Si in VB con Print scrivi sulla form, in Gambas sulla Console, penso che la scelta della DrawingArea vada bene.
Quello dei componenti comunque è un falso problema se ne possono usare a centinaia, ti basta dare un'occhiata al codice della IDE e/o degli stessi componenti.
:ciao: :ciao:
-
Io anni fa ho fatto un progetto per la gestione di una tombola mettendo nel form 90 LCDLabel senza nessun problema.
Per il tuo orologio potresti fare una cosa similare, così puoi gestire ogni lettera come ti pare e piace in maniera indipendente dalle altre.
-
mettendo nel form 90 LCDLabel
...da un punto di vista di gestione delle risorse/memoria la soluzione di sixam mi sembra di gran lunga preferibile ! (http://static1.uk.businessinsider.com/image/57bd82d5dd08956a168b4b3d/its-weird-how-google-thinks-full-screen-interstitial-ads-in-apps-are-ok-but-it-wants-to-punish-them-on-the-mobile-web.jpg)
-
C'è voluta un pò di pazienza, ma li ho posizionati esattamente come nelle cartelle della tombola, in 6 gruppi separati.
Via codice sarebbe stato più complicato.
-
C'è voluta un pò di pazienza, ma li ho posizionati esattamente come nelle cartelle della tombola, in 6 gruppi separati.
Via codice sarebbe stato più complicato.
Un lavoro non molto riuscito però, ti allego immagine di come vedo il tuo progetto nell'ultima versione (credo), la due quella che trovi qu (http://www.gambas-it.org/smf/index.php?topic=2627.msg33319#msg33319)i.
Se ricordi te ne avevo già accennato.
Ti allego il progetto di un'idea di finestra per me più consona con cui potresti aggiornare il tuo progetto.
:ciao: :ciao:
-
Benvenuto sul forum!
Il passaggio da VB a gambas appare sempre un po' ostico, ma con il passare del tempo vedrai che prenderai mano e sarà tutto semplicissimo!
Comunque io ti consiglierei di continuare a provare e smanettare nei form e sopratutto leggere la wiki che dà moltissimi aiuti e spunti :ok: