`

看你知道不知道-文本框的SetFocus报错

 
阅读更多
很多时候需要像文本框上打焦点,但是很多时候在窗体的Load事件里边调用必然出错,这个我们可以避免,但是如果有些时候我们避免比了,比如调用Combox的ListIndex属性,就要触发Click事件,很多时候我们在这个事件里边就要做一些焦点设置的都事情了。

所有由于Load事件波及的combox的Click事件,造成了TextBox的SetFocus有时候错,而有些时候正常,如何解决这个问题呢。

解决办法如下:

将oText.SetFouce方法包装一下为下边的代码

'设置文本框的焦点
Public Sub TextBoxSetFocus(oText As TextBox)
    If oText.Visible Then oText.SetFocus
End Sub

以后在调用的时候使用这个函数就可以了。

原理很简单,应为在如果产生错误原因就是在Load事件里边触发SetFocus的时候,TextBox还是不可见的,所以在调用SetFocus的时候,处理一下TextBox的可见性就可以了。
分享到:
评论

相关推荐

    VC 6.0为文本框光标设置输入焦点.rar

    VC 为文本框控件的光标设置输入焦点,焦点就是文本框默认出现光标的位置,光标默认在第几个文本框中显示,本代码将向你演示如何设置默认的文本框光标。下面是相关的代码:  //获得编辑框窗口  CEdit* pEdit1 = ...

    matlab开发-setfocus

    首先,`setfocus`函数是MATLAB图形用户界面(GUI)编程的一部分,用于将键盘输入的焦点转移到指定的图形对象上,如按钮、文本框、编辑框等。这在创建交互式应用时特别有用,因为它增强了用户体验,让用户可以通过...

    精彩编程与编程技巧-如何让文本框输入完后直接跳入下一行...

    根据给定的信息,本文将详细解释如何在编程中实现文本框输入完成后自动跳转到下一个文本框的功能。这一技巧在很多应用中非常实用,尤其是在需要用户连续输入多个字段的情况下,可以大大提高用户的输入效率和体验。 ...

    ssd4答案 qt版

    ui->lineEdit->setFocus(); } Widget::~Widget() { delete ui; } void Widget::loadTextFile(QString i){ QString st1,st2; st1 = ":/res/"; st2 = i + ".txt"; st1 += st2; QFile inputFile(st1); input...

    按回车键依次移动光标到下一个文本框

    在OnSetFocus函数中,你可能不需要做任何事情,因为焦点已经自动转移到了新的文本框。但是,如果你需要进行额外的处理,可以在这里添加代码。 在实际应用中,你可能需要为每个文本框添加映射,并且在OnKillFocus中...

    精彩编程与编程技巧-如何在VB中制作不回显的文本框...

    ### 如何在VB中制作不回显的文本框 在Visual Basic (VB) 开发环境中创建一个不回显用户输入的文本框(通常用于密码输入场景),可以通过利用Windows API函数来实现这一功能。本文将详细介绍如何通过调用特定的...

    VC++设置窗体文本框控件的焦点

    如果你想要在窗体加载时自动将焦点放到特定的文本框,你可以在 OnInitDialog() 函数中调用 `SetFocus()`: ```cpp BOOL CMyDialog::OnInitDialog() { CDialogEx::OnInitDialog(); // 设置文本框控件的焦点 m_...

    VBA 64位系统,窗口无法获取焦点,文本框无法输入解决

    检查代码中是否正确设置了文本框的`SetFocus`方法,确保在需要用户输入时,焦点被正确地转移到了文本框。 在提供的文件"TopWindow.bas"中,可能包含了解决这个问题的代码示例。该文件可能定义了一个名为`TopWindow`...

    利用VB文本框特性制作多媒体抢答器

    当用户点击某个命令按钮(如开始按钮)时,可以通过调用Text1.SetFocus方法使文本框获得焦点,这样用户就能直接在文本框中输入抢答号码。 5. 代码实现 在VB中,可以为文本框的Change事件编写如下代码: ```vb ...

    VB控制文本框光标位置及全选功能.rar

    VB文本框控制程序,控制文本框光标位置,全部选择功能VB6.0源代码。可控制光标被移动到文本的开头处、光标被移动到文本的第三个字符后面、光标被移动到文本的结尾处等,具体的实现代码:  Private Sub Option1_Click...

    调用API函数映射网络驱动器

    - 在文本框的`KeyPress`事件中,可以检测`KeyAscii`变量,如果按下的是回车键(ASCII码13),则使用`SetFocus`方法将焦点转移到下一个文本框。 以上就是关于调用API函数映射网络驱动器以及VB编程中的一些常见技巧...

    VB程序设计课后习题答案.pdf

    - 使用SetFocus方法可以使文本框获取焦点。 17. **文本框事件的区别**: - Change事件在文本框内容改变时触发,无论用户输入还是程序修改。 - KeyPress事件在用户按键时触发,可以通过KeyAscii参数获取按键的...

    2013年3月全国计算机等级考试二级VB笔试试卷.doc

    - 文本框事件:SetFocus、GotFocus和LostFocus事件的触发情况。 - 键盘事件:KeyPress、KeyDown和KeyUp的区别,输入字符时触发的事件。 - 标准模块:可以声明全局变量,也可以包含子过程和函数。 这些知识点覆盖...

    常用的文本框通知消息

    ### 常用的文本框通知消息及控制消息详解 #### 概述 文本框(TextBox)作为用户界面设计中最常见的元素之一,在Windows应用程序开发中扮演着重要角色。本文档旨在提供关于TextBox控件的标准通知消息及部分常用控制...

    浙江省计算机等级考试二级VB上机练习题.pdf

    - 焦点管理:通过`SetFocus`方法设置当前活动控件。 7. **程序调试**: - 运行预设的`Design.exe`文件来比较程序的运行效果,确保设计的程序与样例一致。 - 使用调试工具进行错误检查和功能验证。 在解决这些...

    CMyEdit.rar_CMyEd_CMyEdit_c++ 文本框

    在本文中,我们将深入探讨如何使用C++实现一个自定义的文本框控件,这个控件在获得光标时能够改变颜色,就像标题"CMyEdit.rar_CMyEd_CMyEdit_c++ 文本框"和描述中所提到的那样。这个功能在用户界面设计中非常常见,...

    全国计算机等级考试复习资料.pdf

    - `Text1.SetFocus`方法用于将焦点设置到文本框,使其成为活动元素。 在实际考试中,考生需要熟悉这些概念,并能通过编写代码来实现相应功能。例如,要在文本框输入时同步更新标签内容,可以使用`Text1_Change`...

    取焦点(c++builder)

    例如,如果你有一个名为`Edit1`的`TEdit`控件,你可以通过`Edit1->SetFocus();`来让它获得焦点。 3. **自动焦点**:有些控件如按钮,在被点击后会自动失去焦点,但有些控件如文本框,用户可能希望在它们之间切换...

    qt键盘映射和焦点移动

    因此,当提到“g++编译会报错”时,这可能是因为源代码需要针对ARM平台进行特定的配置或编译选项设置。 综上所述,"qt键盘映射和焦点移动"涵盖了Qt中处理键盘输入和界面焦点的重要概念。通过事件过滤器,你可以...

Global site tag (gtag.js) - Google Analytics