0

Hi all,

I would like to ask one question. Can I know where the focus is in a main Form? Eg: there will have some buttons, text boxes and labels. How to check the focus?

Please give me some ideals.

Thanks,
zawpai

4
Contributors
9
Replies
13
Views
9 Years
Discussion Span
Last Post by zawpai
0

as ryan said look in controls propeties, the minor one of tab index value will get focus.
ie : text1 - tabIndex = 0 -> this control will get focus
text2 - tabIndex = 1 -> focus after text1
....
or see where the cursor flicker when it run.

0

Hi ryan & Jx,

I know one of the control properties have tabIndex, I think that is mostly used or control when we press 'Tab' key, isn't it?

Eg: I have two text boxes and command buttons. When I click text1, I want to know that is text1. After that, I will key '1' key in text1 if i press one time. If I press continuously '1' key, I will not show the text in text1 and then do the focus on button1.

My question will confuse to you. I will show my sample code.

Dim PressingCounter As Integer 'Detect

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If (KeyCode = 97) Then
If (Text1.TabIndex = 0) And (PressingCounter > 0) Then
Text1.Text = ""
Command1.SetFocus
PressingCounter = 0
Exit Sub
ElseIf (Text2.TabIndex = 1) And (PressingCounter > 0) Then
Text2.Text = ""
Command2.SetFocus
PressingCounter = 0
Exit Sub
End If
PressingCounter = PressingCounter + 1
End If
End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
If (KeyCode = 97) Then
PressingCounter = 0
End If
End Sub

But, I can't sense text2. I think my program is something wrong. Please check it for me.

Thanks,
zawpai

0

Hi all,

Actually, my program will have many text boxes. That why I want to know where the focus.
If the focus is in text box, my program will need to check whether pressing key is one time or continuous. I will do the other tax while pressing the key continuously and the key in value will not put in text box.

How should I solve that problem.

Best regards,
zawpai

0

below code Return Active control name in "Form1" :

Form1.ActiveControl.Name
0

Hi,

ryan.. Although I remove 'Exit Sub', still can't get the answer that i want. Have you done the test run with my sample code?

Mbt925.. I try to write with 'Form1.ActiveControl.Name', but I get an error. Can you show me some sample code? Because I don't know how to use it.

Thanks,
zawpai

0

Hi Mbt925,

I have already tested your program. Now, I understand about 'AcitveControl.Name'.

Thanks,
zawpai

This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.