使用VB6在用户控件内设置焦点

使用VB6在用户控件内设置焦点,vb6,user-controls,setfocus,Vb6,User Controls,Setfocus,我正在使用VB6。 我有几个表格,我需要打开一个表格。此表单有一个UserControl。 我的问题是该表单中UserControl元素中的setfocus Sub Form_Activate() Ctrl_User.MyTextbox.SetFocus End Sub 但不要跑 我怎么能做到呢 谢谢您试过这个吗: Sub Form_Activate() Ctrl_User.Enabled = True Ctrl_User.MyTextbox.SetFocus End

我正在使用VB6。 我有几个表格,我需要打开一个表格。此表单有一个UserControl。 我的问题是该表单中UserControl元素中的setfocus

Sub Form_Activate()
    Ctrl_User.MyTextbox.SetFocus
End Sub
但不要跑

我怎么能做到呢

谢谢

您试过这个吗:

Sub Form_Activate()
    Ctrl_User.Enabled = True
    Ctrl_User.MyTextbox.SetFocus
End Sub
此外,您可能还需要在此处查看此内容,它可能会对您有更多帮助:

如果您正在创作用户绘制的控件,则不会有任何 用户控件上的组成控件。如果你不想要你的 控件要能够接收焦点,请设置CanGetFocus属性 将UserControl对象的值设置为False。默认情况下,CanGetFocus为True

如果用户绘制的控件可以接收焦点,则UserControl 对象将在控件启动时接收GotFocus和LostFocus事件 接收并失去焦点。用户绘制的控件负责 在具有焦点时绘制自己的焦点矩形,如中所述 本章中的“用户绘制的控件”

这是UserControl的GotFocus和LostFocus的唯一函数 用户绘制控件需要完成的事件。你不需要 为控件的用户引发GotFocus或LostFocus事件, 因为如果 CanGetFocus属性为True


谢谢你,理查德。我正在使用VB6,并且我的UserControls中没有property.Enabled和.CanGetFocus。如果直接在properties窗口中将UserControls的
TabIndex
设置为0,会怎么样?当您打开表单时,它将自动聚焦UC中TabIndex为0的控件。我有TabIndex=0的usercontrol。但不要跑