SMF - Just Installed!
20 Dic 2012 - Ubuntu - aggiornare free pascal e lazarusPuò capitare che usando Ubuntu si voglia aggiornare la propria versione di Lazarus, ma allo stesso tempo si necessita dell'ultima versione di free pascal altrimenti il pacchetto .deb non viene installato a causa delle dipendenze non soddisfatte.
Bene, per fare questo i passaggi sono pochi e semplici. Create un file di nome "getlaz" e dentro copiate quanto segue #!/bin/sh gpg --keyserver hkp://pgp.mit.edu:11371 --recv-keys 6A11800F gpg --export 6A11800F | sudo apt-key add - echo "deb http://www.hu.freepascal.org/lazarus/ lazarus-stable universe" > lazarus.list sudo mv -v lazarus.list /etc/apt/sources.list.d/lazarus.list sudo apt-get update sudo apt-get install lazarus Salvate, chiudete e poi da terminale digitate quanto segue sudo chmod +x getlaz Questo renderà il file appena creato eseguibile da voi. Ora eseguite da terminale con ./getlaz accettate l'installazione e aspettate che termini. A questo punto il vostro free pascal dovrebbe essere aggiornato all'ultima versione disponibile, ma nel dubbio avviate il gestore degli aggiornamenti e aggiornate tutto quello che vi si ripresenta. Riavviate il pc. Ora andate nel sito ufficiale di lazarus nella sezione download e scaricate l'ultima versione di lazarus nel formato ".deb" lanciatelo e vi si dovrebbe aprire l' Ubuntu Software Center (USC) che vi darà la possibilità di aggiornare, se doveste trovare difficoltà ad installare dall'USC allora aprite il terminale e digitate sudo dpkg -i lazarus_x.x.x-x_iyyy.deb dove le x indicano il numero di versione e le y l'architettura del sistema. Ora tutto dovrebbe essere aggiornato, buona programmazione (ovviamente con Lazarus). PS: Se tutto è andato a buon fine ma avete problemi ad aprire lazarus o a compilare assicuratevi che i permessi della cartella contenente lazarus siano corretti digitando: sudo chmod -R 777 cartella_lazarus dove cartella_lazarus può essere /usr/lib/lazarus/ oppure /usr/share/lazarus/ dipende dalla versione di lazarus e dal pacchetto d'installazione 11 Dic 2012 - Come interfacciare periferica twainE' spesso necessario riuscire ad interfacciarsi con scanner, webcam che usano il protocollo twain ( se puo' definirsi cosi'), e tra i componenti a disposizione di lazarus non ce ne sono di utili, quindi è necessario cercare altrove... Con l'aiuto del Forum ho trovato questi file qui http://www.kluug.net/delphitwain.php ... che nella loro ultima versione hanno anche un esempio di uso con lazarus. Quindi prima di tutto bisogna scaricarsi i file di delphitwain... Analizzata la procedura ci si accorge che i file per lazarus vengono caricati runtime senza installare alcun componente nella palette... e peche' mai? Creiamoci un nuovo componente....aggiungiamo al pacchetto il file delphitwain..., compilamo ed installiamo il componente... Adesso sulla palette abbiamo la linguetta NB con il componente installato. Proviamolo subito.... Creiamo un nuovo progetto, mettiamoci un tbuttn ed un timage.... mettiamoci pure il componente delphitwain.... adesso gestiamo l' evento del button onclick inserendo il seguente codice che serve per verificare che si abbia una periferica compatibile con il twain ed avviare, nel caso positivi, il processo di aquisizione... [code] var SelectedSource: Integer;//periferica selezionata begin {Si raccomanda di caricare la libreria dinamicamente senza forzare l'utentefinale all'installazione} if delphiTwain1.LoadLibrary then begin {Carica il source manager} delphiTwain1.SourceManagerLoaded := TRUE; {E permette all'utente il suo uso} SelectedSource := delphiTwain1.SelectSource; if SelectedSource -1 then begin {Carica il sorgente , seleziona il tipo di trasferimento e attiva l'interfaccia)} delphiTwain1.Source[SelectedSource].Loaded := TRUE; delphiTwain1.Source[SelectedSource].TransferMode := ttmMemory; delphiTwain1.Source[SelectedSource].Enabled := TRUE; end; {if SelectedSource -1} end else showmessage('Twain non è installato.'); end; [/code]
Bene adesso dobbiamo gestire l'evento del delphitwain....OnTwainAcquire.... [code] procedure TForm1.DelphiTwain1TwainAcquire(Sender: TObject; const Index: Integer; Image: TBitmap; var Cancel: Boolean); begin IMAGE1.Picture.ASSIGN(IMAGE);// ASSEGNA IMMAGINE A TIMAGE CANCEL:=TRUE; // UNA SOLA IMMAGINE (SE FOSSE FALSE.. CONTINUEREBBE LE SCANSIONI) end; [/code]
Tutto fatto... Compiliamo il progetto.. e clicchiamo il button.... e magia.... l'immagine scansionata viene assegnata al timage....( schretchatelo per avere l'immagine totale a Video) Inserisco il link alla pagina ove ho postato i file d'esempio e dell' lpk http://www.lazaruspascal.it/index.php?topic=474.msg3299#msg3299
17 Set 2012 - Lazarus 1.0Lazarus 1.0 Dopo qualche anno di sviluppo per rendere stabile la release 0.9.x, a più di dieci anni dal lancio del progetto, finalmente, il 29 agosto 2012 è apparso il tanto atteso annuncio sull'uscita della versione 1.0 del nostro amato ambiente di sviluppo: Lazarus. Il tempo è stato molto ma ora, finalmente, abbiamo un ambiente di sviluppo che genera binari sia a 32 che a 64 bit sulle più disparate piattaforme hardware che montano i più diffusi sistemi operativi, il tutto con la possibilità di compilare da un unico sorgente: credo che sia uno strumento veramente unico. Il raggiungimento di una release stabile ufficiale come la 1.0 non è cosa di poco conto. Ci sarà di sicuro ancora molto da fare, ad esempio portare più applicazioni possibili ad essere compilate con questa versione ma, la base consolidata del compilatore, dovrà portare per forza di cose ad ottenere un codice pascal che resisterà (almeno si spera ![]() L'annuncio ufficiale lo trovate qua: http://www.lazarus.freepascal.org/index.php?topic=18019.0 03 Lug 2012 - Aspetto retrò (Cmd Line)
Per gli amanti dell'aspetto minimale nei programmi (come me) volevo segnalare l'esistenza del componente CmdLine che potete trovare a questa pagina.
http://wiki.lazarus.freepascal.org/CmdLine
Scaricatelo a questo indirizzo
http://sourceforge.net/projects/lazarus-ccr/files/CmdLine/
ovviamente scaricate la versione più recente e procedete all'installazione del package in lazarus. Una volta terminata l'installazione nella pallette dei componenti troverete una nuova voce "Other". Se cliccate su di essa vedrete un nuovo oggetto "TCmdBox".
Per capire bene come funziona tale strumento vi consiglio di andare ad aprire il file di esempio CmdLineExample.lpi che trovate nella stessa cartella del package!
Buona programmazione :)
24 Giu 2012 - Disporre le finestre in un blocco unico (come Delphi)Per il mio modo di operare trovo scomoda, la disposizione de dafault delle varie finestre
- Editor Sorgente, Codice, Mesaggi. in particolare se uso Lazarus su una VirtualMachine, ogni volta che questa viene ridimensionata, si scombina tutta la disposizione delle finestre, quindi dopo un po' di prove ho trovato come raggruppare l'ambiente di lavoro. Come sempre dipende dalle abitudini personali (un po' come l'ambiente di Gimp e Photoshop dalla disposizione completamente diversa; non si resta indifferenti o piace o si detesta). Sempre per abitudine uso lo schema colori Delphi e non il Default (Strumenti->Opzioni-Editor->Visualizza-Colori e Delphi al posto di TwiLight). Se preferite la disposizione raggruppata come di default in Delphi, ecco come fare: 1 - Accertarsi di avere visibili gli Header delle Finestre (fascia con scritto il titolo es: Messaggi, Editor sorgente); se non sono visibili : - menu Visualizza e scegliete una finestre normalmente non visualizzata es: Editoe FPDoc - Click con il pulsante destro del mouse (sulla fascia laterale a sx) - click sulla Voce ShowHeaders (che verra' spuntata) 2 - ora si trascinano le finestre dentro quella del Menu e Componenti - spostare il mouse nella fascia (Headers) con il titolo della finestra e la x * Editor codice - tenendo premuto il Pulsante Sinistro del mouse, trascninare dentro la Finestra dei Menu - fino a che il puntatore del Mouse non entra nell'area della finestra ricevente (quella dei Menu + Componenti), vedrete un rettangolo trasparente, - quando invece entra nell'area della finestra ricevente, il rettangolo si adatta alle dimensione della finestra, ora rilasciate il tasto del mouse Messaggi - stessa operazione di prima, Mouse su Header, Pulsante sx premuto, trascinare nella finestra ricevente Ispettore Oggetti - Mouse su Header, Pulsante sx premuto, trascinare nella finestra ricevente a questo punto le finestre sono tutte inglobate nella principale (Menu + Componenti), si possono spostare a piacimento; es: Ispettore Oggetti a Sinistra - Editor Codice a Destra - Messaggi in Basso (per tutta la larghezza della finestra) - sempre agendo sulla fascia Headers, si trascina la finestra Editor Codice dentro la Finestra Ispettore Oggetti.. |