Blocco cursore

lunedì 02 agosto 2010 - 12.11

Se2 Profilo | Junior Member

Ciao ho questo codice che mi serve a bloccare il cursore nella Texbox nel caso in cui la condizione non venga soddisfatta
If Not IsNull(Me.[TexBox1]) Then
Me.[TexBox2].SetFocus
Else
Cancel = True
End If

Io però vorrei che se nella Texbox1 non viene inserito alcun dato il cursore passasse alla texbox2 e su Evento in uscita tornasse sulla texBox1. Questo ciclo dovrebbe essere ripetuto finchè nella texBox1 non viene inserito il dato
In pratica Se TextBox= "" il cursore passa a Texbox2. Quando Texbox2="*" il cursore torna su Texbox1. Uscendo da TexBox1 se ="*" il cursore va su Texbox2 e poi torna su Texbox1 Quando Texbox1="*" il cursore deve andare su TexBox3
Spero di esser stato chiaro
Ciao GRAZIE

kataklisma Profilo | Senior Member

>Ciao
Ciao!

>ho questo codice che mi serve a bloccare il cursore nella
>Texbox nel caso in cui la condizione non venga soddisfatta
>If Not IsNull(Me.[TexBox1]) Then
>Me.[TexBox2].SetFocus
>Else
>Cancel = True
>End If
>
>Io però vorrei che se nella Texbox1 non viene inserito alcun
>dato il cursore passasse alla texbox2 e su Evento in uscita tornasse
>sulla texBox1.

Scusa ma, come fai a verificare che nella textbox1 non sia stata settata la proprietà Text?La verifica di un'oggetto deve essere sempre e logicamente connessa ad un evento.

Potresti sfruttare gli eventi lostfocus sulle textbox, verificando tranquillamente tutte le condizioni :

void textBox2_LostFocus(object sender, System.EventArgs e) { if (textBox1.Text == String.Empty) textBox1.Focus(); }

>Ciao GRAZIE
Ciao!Se qualcosa non è molto chiara, scrivi pure ;)

------------------------------------------
Ignazio Catanzaro

http://blogs.dotnethell.it/swdev/

Se2 Profilo | Junior Member

Ciao grazie per il suggerimento ma purtroppo non ho capito bene il tuo consiglio. Non sono molto pratico di VBA
Ho inserito il tuo codice al posto dell'altro ma mi colora di rosso la pruima riga
Non ne voglio approfittare ma mentre ci sono avrei bisogno di chiederti un consiglio perchè non riesco proprio. TI spiego.


Ho questo codice cercato su internet e modificato con grande fatica

If [003].Value = "Nessun cd doppio" And [018].Value <> "01/2-" Then
Cancel = True
Dim risp As Integer
risp = MsgBox("Verificare contenuto: Cd doppio , 0, "Errore di digitazione!")
End If

In pratica io dovrei verificare che se nella Textbox 003 si trova il valore "Nessun cd doppio" e nella textbox 018 il valore è diverso da [01/2] & "*" & [Numero matricola]- deve comparirmi il MsgBox.... Altrimenti deve passare al record successivo
Funziona come codice ma sinceramente considerato che devo adattare questo codice a numerosi Textbox che completano la maschera per non sbagliare preferirei riuscire a scrivere:

Se il valore contenuto nel textbox [003] è "Nessun cd doppio" e il valore del [018] è = a "01/2-_[Numero matricola]" condizione soddisfatta altrimenti deve appaarire il MsgBox...
GRAZIE Ciao

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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5