Meganalotto cambia casa e si aggiorna.

Vista la nuova politica di Netsons, sto provvedendo a spostare i progetti in diversi hosting gratuiti che offrono anche il controllo di versione. Ho pensato di spostare i software un po’ più grandi e rilevanti su Google Code con l’uso di svn in modo anche da facilitare eventuali collaborazioni e di spostare i moduli e le classi di Gambas nell’area download del sito Gambas-it in modo da rendere il lavoro disponibile agli sviluppatori di questo linguaggio.

Il primo progetto che è stato spostato è stato Meganalotto che ora è ospitato su Google Code all’indirizzo http://code.google.com/p/meganalotto/. È stato aggiornato anche il link presente in questo blog in modo tale che non punti più a Netsons poiché la pagina a breve non sarà più raggiungibile.

Ne approfitto anche per indicare le novità del software:

– Non c’è più bisogno di scaricare la smorfia in quanto è stata inglobata direttamente nel software
– L’aspetto grafico è stato leggermente modificato
– È stata creata una nuova bellissima icona realizzata dal fantastico Gaetano “Tangoku”
– Il codice è stato leggermente alleggerito

Buon download e come sempre postate commenti, idee, bug e pensieri.

Gambas – Modificare cursore del form

Alle volte, per particolari applicazioni, può essere utile e/o pratico modificare il cursore del mouse per tutta l’area di un determinato form. Questo tipo di pratica la si trova sopratutto nei videogame dove il puntatore de mouse assume le forme consone al tema del videogioco stesso.

Effettuare tale operazione in Gambas è abbastanza semplice e la dinamicità del codice permette di modificare il cursore anche in base agli eventi. Premettendo che molti degli oggetti di Gambas hanno la funzione per scegliere il puntatore, tale metodo è pratico perchè permette di associare un’immagine al cursore e non di scegliere tra un limitato numero di esempi predefiniti.

Analizziamo il codice. Per praticità lo inserirò nella sub di apertura del form ma ovviamente esso potrà essere usato quando e dove serve.



Come si vede inizialmente si dichiara una variabile di tipo immagine di nome pCursor. Essa servirà a contenere l’immagine del nostro puntatore. Nella sub open del form si nota come si sia semplicemente associata un’immagine ala variabile prima dichiarata mediante l’uso di Picture.Load, al quale passeremo l’indirizzo dell’immagine, e si sia istanziato un nuovo puntatore associato a Me.Cursor (dove ME indica il form in cui ci si trova) mediante l’operatore NEW.

Il codice è banale ma l’effetto è sicuramente pratico laddove possa risultare utile allo sviluppatore.

Gambas – Conoscere il proprio indirizzo IP

Lavorando ad un progettino avevo pensato alla possibilità di conoscere l’indirizzo IP dell’utente. Questo può essere utile quando si ha la necessità di conoscere l’indirizzo con cui ci si affaccia alla rete magari per comunicare con altri computer. Gambas, che io sappia, non ha librerie o funzioni particolari che permettano di svolgere tale compito e pertanto ci si deve affidare ad un semplice comando esterno che verrà intercettato e mostrato a schermo.

Il nostro lavoro verrà svolto da una riga di comando:

wget http://checkip.dyndns.org/ -q -O – |grep -Eo ‘\’

Esso non fa altro che rivolgersi al servizio http://checkip.dyndns.org/ (che altri non è che una riga di testo del tipo)

Current IP Address: 93.xxx.xxx.xx

e ne preleva solo le cifre, ovvero l’indirizzo IP. In questo modo ci verrà restituito il nostro indirizzo.

La funzione Gambas che ci restituirà l’IP sarà:


Come si vede la funzione è semplice. Essa dichiara una variabile di nome result di tipo stringa che conterrà l’output del comando. La riga successiva è l’esecuzione del comando visto prima con relativo redirect sulla variabile appena dichiarata. Ottenuto l’IP lo restituiamo con RETURN.