Gestione della Lib "user32" Alias "GetAsyncKeyState"

lunedì 15 gennaio 2007 - 18.07

trinity Profilo | Guru

Ragazzi devo gestire la pressione del tasto tab e shift-tab per postare il cursore nelle textbox in vb net 2005 ed ovviamente nella gestione del tab avvengono delle operazione tipo ricerca record....allora nell'evento Validating ho deciso di gestire la libreiria GetAsyncKeyState in questo modo:


If CInt(GetAsyncKeyState(Keys.ShiftKey)) >= 0 Then
If GetAsyncKeyState(Keys.Tab) < 0 Then
MaskedTextBox1.Text = DateTime.Parse(MaskedTextBox1.Text).ToString("dd/MM/yyyy")
If IsDate(Me.MaskedTextBox1.Text) = False Then
MessageBox.Show("Attenzione data errata.", "Send.Net", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
e.Cancel = True
Else
caricaschedina(CInt(GetSetting("Send.Net", "CodAlbergo", "CodAlb")), CDate(Me.MaskedTextBox1.Text))
End If
End If
End If

solo che all'apertura della winform il curose si posa direttamente sulla maskedtextbox, scrivo la data che mi serve premo il tab e la gestione del codice all'interno del tab non avviene, faccio un controllo e la libreria GetAsyncKeyState mi riporta un valore= 1 quindi non esegue la if..end if sopra descritta...poi ritornando indietro con lo shift-tab e ripremo il tab il valore della libreria GetAsyncKeyState mi restituisce un valore inferiore a 0 e quindi mi esegue la if.
In altre parole sto vedendo che la libreria GetAsyncKeyState non è molto stabile ma io devo gestire assolutamente cosa avviene quando si preme il tab per andare avanti e lo shift-tab per tornare indietro, sapete darmi un consiglio migliore?

Ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5