in

UgiMobile.org

Il primo User Group Italiano dedicato a Windows Mobile

Mirco Vanini

Embedded life tips

System Meter Chart PDA

Durante lo sviluppo di un progetto mi sono imbattuto nella necessità di realizzare un controllo per PDA che rapresentasse l'andamento di un valore nel tempo. Come "fonte di ispirazione" ho utilizzato la visualizzazione della "cronologia utilizzo CPU" del task manager.

Dopo un pò di lavoro sono riuscito a "confezionare" un controllo che ne mima il comportamento. Ho esteso un pò il grafico prodotto permettendo la gestione dello stesso sia tramite line che stick.

Il controllo utilizza un sistema di  "Double Buffering" con una bitmap offline in cui viene effettivamente disegnato il grafico. Questo ovviamente per evitare il flickering che inevitabilmente sarebbe comparso.

Tutto questo perchè su .Net CF i controls non supportano il double buffer nativamente, per esempio in .Net è possibile attivarlo tramite il seguente codice:

   1: public void EnableDoubleBuffering()
   2: {
   3:    // Set the value of the double-buffering style bits to true.
   4:    this.SetStyle(ControlStyles.DoubleBuffer | 
   5:                  ControlStyles.UserPaint | 
   6:                  ControlStyles.AllPaintingInWmPaint,
   7:                  true);
   8:    this.UpdateStyles();
   9: }

Di seguito riporto un print screen del programma demo e il link in cui trovare il medesimo.

 

Sorgenti Progetto di esempio

Buone "misurazioni" a tutti :)

Only published comments... Nov 07 2008, 08:57 AM by Mirco Vanini
Filed under: ,

About Mirco Vanini

 Mirco Vanini è un consulente focalizzato sullo sviluppo di soluzioni mobile utilizzando sia .NET Compact Framework che SDK nativi. A partire dagli anni 90 ha sviluppato applicazioni utilizzando le varie tecnologie presenti sul mercato. Dal 2001 ha incominciato a sviluppare con Microsoft .NET sia per l'ambiente desktop che per l'ambiente mobile. Da sempre affronta lo sviluppo mobile utilizzando sia codice managed che codice nativo per ottenere sempre il massimo delle performance dai vari dispositivi. Alla base della sua filosofia vi è la semplicità e un constante aggiornamento professionale, credendo che la tecnologia non sia un ostacolo al cambiamento ma costituisca un valore aggiunto da comprendere e da sfruttare.

Powered by Community Server (Commercial Edition), by Telligent Systems