![]() |
Chirurgia endoscopică a hipofizei
"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală. Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale. www.neurohope.ro |
regain lost focus textbox
Last Updated: Nov 18 2010 10:45, Started by
credit
, Nov 17 2010 14:22
·
0

#1
Posted 17 November 2010 - 14:22

Am o forma cu mai multe textboxuri. In momentul in care parasesc textbox1, daca valoarea din textbox1 nu indeplineste un anumit set de conditii in momentul in care parasesc textboxul (cu enter, tab, click etc... nu conteaza cum) sa ma refocuseze in textbox1.
Eu am scris asa: Private Sub TextBox10_AfterUpdate() If TextBospam.spam.Value <> 10 Then TextBospam.spam.setfocus End If End SubAm incercat si cu "Private Sub TextBox10_Exit(ByVal Cancel As MSForms.ReturnBoolean)" Nu stiu de ce mi se modifica codul care l-am pus. In loc de textbospam.spam este "textbox10" Edited by credit, 17 November 2010 - 14:29. |
#2
Posted 17 November 2010 - 14:48

Ti-am zis si pe privat, dar nu cred ca ai inteles tu.
In exemplul atasat, in prima caseta scrii 10 (conform cerintei tale). Daca acolo ai valoarea 10, nu poti sa scrii mai departe pana nu modific valoarea. Daca scrii 11, focusul se muta pe urmatorul textbox. Uita-te in cod si o sa vezi ca e cu focus (ca vad ca iti place de el ![]() Private Sub txt2_Enter() If txt1.Text = "10" Then txt1.SetFocus End If End SubCodul pentru a se pune focus undeva se pune in urmatorul control. Nu ai cum sa pui tot in texbox1 sa isi primeasca focusul pt. ca nu merge txt1 - textbox1 txt2 - textbox2 In loc de focus mai poti face o manevra. Daca in textbox1 ai valoarea 10, celelalte textbox-uri sa fie inactive, altfel daca nu ai trecut valoarea 10 acolo sa devina activae. Edited by Sandstorm, 17 November 2010 - 15:04. |
#3
Posted 17 November 2010 - 15:09

Hai ca iti scriu pe public poate mai vor si altii sa participe la discutie.
Tu mi-ai scris codul pentru evenimentul "enter" pe textbox2. Eu vreau ca evenimentul sa fie enter pe textbox1. Adica cand parasesc textbox1 si conditia nu este indeplinita sa recastig focusul pe textbox1. |
#4
Posted 17 November 2010 - 15:16

Quote Eu vreau ca evenimentul sa fie enter pe textbox1. Adica cand parasesc textbox1 si conditia nu este indeplinita sa recastig focusul pe textbox1. Nu poti sa pui in acel control cod ca sa isi recastige singur focusul. Incearca tu si zi-mi daca merge. Pune si cu exit si cu enter si cu after si before update. Nu merge. Trebuie sa ii spui altui control ca daca cel de dinaintea lui nu indeplineste o conditie, sa te duca inapoi. Cu ce te deranjeaza ca este cu Enter? Poti sa ai 50 de textbox-uri. Daca primul textbox nu are o valoare diferita de 10, din cauza acelui setfocus pe primul textbox, nu poti sa mergi mai departe. L.E. Incearca asa: Private Sub txt1_Exit(ByVal Cancel As MSForms.ReturnBoolean) If txt1.Text = "10" Then txt1.SetFocus End If End SubNu o sa te puna inapoi pe primul textbox. L.L.E. Daca tot vrei cu evenimentul Exit, incearca si asa: Private Sub txt1_Exit(ByVal Cancel As MSForms.ReturnBoolean) If txt1.Text = "10" Then txt1.SetFocus Cancel = True End If End Sub Edited by Sandstorm, 17 November 2010 - 15:23. |
#5
Posted 17 November 2010 - 15:41

Bravo man, vezi ca merge??
Trebuia sa mearga ca asa am eu la servici in program. E facut in oracle si nu ma lasa sa parasesc campul daca nu bag date conform conditiilor. Trebuia sa mearga si in visual. Private Sub txt1_Exit(ByVal Cancel As MSForms.ReturnBoolean) If txt1.Text = "10" Then txt1.SetFocus Cancel = True End If End Sub UIte poate mai au nevoie si altii. (nici nu mai era nevoie de setfocus) Edited by credit, 17 November 2010 - 15:44. |
#6
Posted 17 November 2010 - 15:44

Da, merge, doar ca mie mi se pusese pata pe Enter.
Abia la final m-am gandit ca daca ai mai multe textbox-uri, nu poti sa le pui acea conditie la toate si ca e mai bine sa o pui la primul si atat. Sa il pui pe cel de jos, pt. ca ti-am pus si error traping. In cazul unei erori sa iti arate un mesaj cu descrierea ei, in loc sa pice aplicatia. Private Sub txt1_Exit(ByVal Cancel As MSForms.ReturnBoolean) On Error GoTo err If txt1.Text = "10" Then txt1.SetFocus Cancel = True End If Exit Sub err: MsgBox err.Description, vbOKOnly + vbInformation, "Eroare" End Sub |
#7
Posted 18 November 2010 - 10:45

.._LostFocus(...) ' if conditii = 0 SetFocus End Sub http://msdn.microsof....lostfocus.aspx Edited by MarianG, 18 November 2010 - 10:57. |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users