vb窗体怎么获得焦点 窗体上有个按钮,KeyDown就失效,Me.SetFocus 似乎也没用,求解怎么办让KeyDown生效 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 当窗体上有可以获得焦点的控件的时候,很少会用到窗体的KeyDown事件,因为,KeyDown会被获得焦点的对象截获.比如,窗体上有一个按钮,获得焦点,这时按下按键,应该是针对于此按钮的操作,而不应该理解为对窗体的操作.如果你一定要对窗体进行操作,可以设置窗体的Click或DBlclick事件. 按钮是吧,就是要按钮的KeyDown事件有效,那就不是窗体获得焦点,是这个按钮获得焦点,假设这个按钮是Command1,那就用下面的代码Command1.SetFocus就这样,是让按钮获得焦点,按钮有焦点,自然就会接收到KeyDown事件 把keypreview属性设置为真就OK啦啦 Me.SetFocus 是让当前form获得焦点! KeyPreview 属性 返回或设置一个值,以决定是否在控件的键盘事件之前激活窗体的键盘事件。键盘事件为:KeyDown、KeyUp 和 KeyPress。语法object.KeyPreview [= boolean]KeyPreview 属性语法有以下组成部分:部分 描述 Object 对象表达式,其值是“应用于”列表中的一个对象。 Boolean 布尔表达式,指定如何接收事件。Setting 中有其说明。 设置值 boolean 的设置值为:设置值 描述 True 窗体先接收键盘事件,然后是活动控件接收事件。 False (缺省值)活动控件接收键盘事件,而窗体不接收。 说明可以用该属性,生成窗体的键盘处理程序,例如,应用程序利用功能键时,需要在窗体级处理击键,而不是为每个可以接收击键事件的控件编写程序。如果窗体中没有可见和有效的控件,它将自动接收所有键盘事件。若要在窗体级处理键盘事件、而不允许控件接收键盘事件时,在窗体的 KeyPress 事件中设置 KeyAscii 为 0,在窗体的 KeyDown 事件中设置 KeyCode 为 0。 注意 一些控件能够拦截键盘事件,以致窗体不能接收它们。这样的例子有:CommandButton 控件有焦点时的 ENTER 键、以及焦点在 ListBox 控件上时的方向键。 如何将word vba 的程序,移植到vb中 这段代码为什么没有进入红色部分? VB回调函数出错,内存不能为写 VB如何用OLE控件调用指定的powerpoint? 汉字问题 vb access datagrid的第二列的每个单元格的链接 串口通信程序文件接收的 问题 如何实现文件夹共享 关于create table 中的字段问题 昏昏欲睡,搞个调查吧:过去一周内,你平均每天睡几个小时? Call OpenRs("select * from pic") VBA 公式求和
比如,窗体上有一个按钮,获得焦点,这时按下按键,应该是针对于此按钮的操作,而不应该理解为对窗体的操作.
如果你一定要对窗体进行操作,可以设置窗体的Click或DBlclick事件.
返回或设置一个值,以决定是否在控件的键盘事件之前激活窗体的键盘事件。键盘事件为:KeyDown、KeyUp 和 KeyPress。语法object.KeyPreview [= boolean]KeyPreview 属性语法有以下组成部分:部分 描述
Object 对象表达式,其值是“应用于”列表中的一个对象。
Boolean 布尔表达式,指定如何接收事件。Setting 中有其说明。
设置值 boolean 的设置值为:设置值 描述
True 窗体先接收键盘事件,然后是活动控件接收事件。
False (缺省值)活动控件接收键盘事件,而窗体不接收。
说明可以用该属性,生成窗体的键盘处理程序,例如,应用程序利用功能键时,需要在窗体级处理击键,而不是为每个可以接收击键事件的控件编写程序。如果窗体中没有可见和有效的控件,它将自动接收所有键盘事件。若要在窗体级处理键盘事件、而不允许控件接收键盘事件时,在窗体的 KeyPress 事件中设置 KeyAscii 为 0,在窗体的 KeyDown 事件中设置 KeyCode 为 0。 注意 一些控件能够拦截键盘事件,以致窗体不能接收它们。这样的例子有:CommandButton 控件有焦点时的 ENTER 键、以及焦点在 ListBox 控件上时的方向键。