maggio 2005 Blog Posts

Aggiungere un tooltip sulla ListView

Questa piccola dimostrazione su come impostare e presentare un ToolTip sulla ListView.   E' necessario definire:   Una ListView  (listView1) Tooltip (toolTip1) Variabile di tipo ListViewItem (itLast)   Aggiungere inoltre un evento "MouseMove" sulla listView1   C# // Generazione dati void GeneraDati() {     for (int k = 0; k < 100; k++)    {        ListViewItem lv = new ListViewItem();        lv.SubItems(0).Text = (k + 1).ToString();        lv.SubItems.Add("Riga: " + (k + 1).ToString());        lv.SubItems.Add(System.DateTime.Now.AddDays(k).ToString());        listview1.Items.Add(lv);     } } // gestore dell'evento private void ListView1MouseMove(object sender, System.Windows.Forms.MouseEventArgs e) {     ListViewItem lvi = this.ListView1.GetItemAt(e.X, e.Y);     string txt = "";     if (!(lvi == itmLast)) {        itmLast = lvi;        if (lvi == null)          txt = "";        else            txt = lvi.SubItems(0).Text;       this.ToolTip1.SetToolTip(this.ListView1, txt);    } }   VB.NET Sub GeneraDati()     Dim...

Fare una copia dello schermo sulla Clipboard e recuperare l'immagine

Il presente suggerimento mostra come si può fare una copia dello schermo sulla clipboard ed eventualmente visualizzarne il contenuto.     Se si vuole un bitmap già presente dalla clipboard: Bitmap img = BitmapFromClipBoard(); oppure (VB.NET) Dim img As Bitmap =  BitmapFromClipBoard()   Se invece si vuole fare la copia dello schermo e avere l'immagine mettere   Bitmap img = CaptureScreen(); oppure (VB.NET) Dim img As Bitmap =  CaptureScreen()   C#           public static Bitmap CaptureScreen()           {                   string strKeys = "^{PRTSC}";                   SendKeys.SendWait(strKeys);                   return BitmapFromClipboard();                          }                         public static Bitmap BitmapFromClipboard()             {                   IDataObject iData = Clipboard.GetDataObject();                   if ((iData.GetDataPresent(DataFormats.Bitmap)))                   {                         Bitmap memoryImage = new Bitmap(((Bitmap)(iData.GetData("System.Drawing.Bitmap"))));                         return memoryImage;                   }                   return null;             }   VB.NET             Public Shared Function CaptureScreen() As...

Certificazione W1 05-011 Navision Attain Development English (ENU)

Lasciatemi fare un piccolo commento personale.   Ho passato il suddetto esame, mi ha fatto penare più del dovuto in quanto oltre ad essere in inglese è fatto con la cosa che odio di più e cioè i quiz tipo quelli che la sera puoi vedere su Canale 5 e Rai 1 farsi concorrenza.   Questi quiz dovrebbero rispondere alla domanda "E' il soggetto in grado di sviluppare con profitto?". Faccio una semplice domanda: ci fideremmo di uno che scrive i programmi in velocità o piuttosto daremmo fiducia ad uno sviluppatore che ci mette il tempo "giusto" a fare le cose?.   A meno di non essere per l'extreme...

Ottenere l'icona associata ad una particolare estensione con C# e VB.NET

La verifica del programma associato comporta la lettura di due chiavi di registro e dei suoi valori (commentato solo il modulo C#):   Manca l'estrazione vera e propria dell'icona associata magari farò un altro blog sull'argomento :)), comunque ho visto che in rete esistono moltissimi esempi su come si può fare. Sulla variabile (pgm) restituita otteniamo il file fisico che contiene l'icona associata all'estensione con il formato "A,B" dove su A c'è il file e B è il numero di icona (di solito 1).   C#                string estensione = ".bmp";                   RegistryKey regKey = Registry.ClassesRoot;                   try                   {                         // ci posizioniamo sulla radice HKEY_CLASSES_ROOT                         regKey = regKey.OpenSubKey(estensione,false);                         if...

Un esempio di gestione del Binding con Postgresql

Al link in basso è possibile trovare un mio esempio di gestione di DataBinding con il database Postgresql.   Per la cronaca io ho un server su Linux Fedora Core 3. La versione di Postgresql installata è la 7.4.7.   Nell'esempio presentato in VB.NET e in C# ho interfacciato una piccola gestione di dati con il database. Gli oggetti gestiti sono DataGrid, TextBox, ToolBarButton, DataSet, BindingManagerBase.   http://community.visual-basic.it/lucianob/articles/11433.aspx

Una funzione di codifica ROT13

Oggi girovagando su internet ho visto due esempi di questa funzione, entrambi mi hanno lasciato perplesso, uno ha fatto (vb.net) un "Select" con 26 "Case", l'altro aveva sempre una select con 4 case. Visto che bisogna essere propositivi pubblico questa mia implementazione. L'algoritmo sposta di 13 caratteri in avanti i caratteri compresi tra "A/a" e "M/m" e all'indietro di 13 caratteri i caratteri compresi tra "N/n" e "Z/z". Gli altri caratteri al di fuori dei quattro range rimangono inalterati. Avviene così che applicando l'encode Rot13 "ABc" diventi "NOp" e "noP" diventi "abC" . Come si può vedere è un meccanismo veramente infantile:   C#   public static string EncodeRot13(string strValue) {     string strTabella = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";    ...

Copyright © Luciano Bastianello

Design by Bartosz Brzezinski

Design by Phil Haack Based On A Design By Bartosz Brzezinski