zoukankan      html  css  js  c++  java
  • winform Focus()函数不起作用 解决办法

    private void Form_Load(object sender, EventArgs e)

    {

    this.txtName.Focus();

    }

    光标到不了txtName。可能的原因 TabIndex不是本窗体中最小的,应该是从1开始,如果设置为0也不正确。

    解决方法

    1、Form_Load中实现

    设置TabIndex,将其设置为一个本窗体最小值,一般为1. 如果还不行则用其它函数:

    (1)txtName this.ActiveControl = txtName;

    可以得到焦点但是其上的内容全被选中。

    (2)this.txtName.Select();

    2、Activated方法中实现:

    this.txtName.Focus();

    小知识:

    在WinForm中,TabIndex与“层”有关,假如有两个panel,panel1(里面有txtName,txtPassword)和Panel2(txtAddress,txtunit),TabIndex的顺序是首先在最外层(panel)选取index最小的控件,然后把光标定位到该panel中tabindex最小的控件上。

    Focus()方法的用法。

      主要与他的使用位置有关。控件的Focus()与enable和visible有关,在Form_Load中,该控件的visible属性不一定为true,所以,这个时候设置focus()不能成功。

  • 相关阅读:
    2020916 spring总结
    20200915--事务
    20200915-mybatis基础
    20200911--使用注解开发
    20200910--Spring配置
    20200909--spring基础-IOC
    20200909-待补充
    20200909记我所看到的问题
    20200909-spring基础一
    面向对象
  • 原文地址:https://www.cnblogs.com/dyufei/p/2573934.html
Copyright © 2011-2022 走看看