微软的DirectInput是基于硬件底层,可以在窗口无焦点时捕捉按键,有兴趣可以去了解了解,在游戏制作方面很有用。
成都创新互联主要从事网站设计、做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务下陆,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220
DirectX SDK 中文版,里面有关于DirectInput的介绍与用法。
要说失去焦点
就不得不先说
获得焦点
大部分有Enabled和Visible属性的对象都有
Got_Focus()
和LostFocus()事件
而且对象的Enabled和Visible属性必须设置为TURE
才可以接受这两个事件
获得焦点即GOT_Focus
何为获得焦点呢
比如TEXT控件而言
他获得焦点的时候光标是在闪的
整个控件处于
一种激活状态
换句话说
焦点也可以说成是光标
比如按下按钮之后
COMMAND控件上有一圈虚线
这就是焦点
所在之处
如果这个焦点从TEXT控件
或者COMMAND控件上转移
了的时候
那么
TEXT或者COMMAND控件的焦点失去事件
即被触发
就FORM而言
是焦点不在窗体之上即触发
比如运行的时候你点击了窗
体以外的部分
按
TAB键切换顺序时候
或单击对象的用户动作
或者SETFOCUS方法
都可以触发对象的焦点失去事件
SETFOCUS是动态的用代码设置的
最后重申一句
对象的Enabled和Visible属性必
须同时设置为TRUE的时候
才可以接受这两个事件
下面的解释来自MSDN
此事件是在一个对象失去焦点时发生,焦点的丢失或者是由于制表键移动或单击另一个对象操作的结果,或者是代码中使用
SetFocus
方法改变焦点的结果。
语法
Private
Sub
Form_LostFocus(
)
Private
Sub
object_LostFocus([index
As
Integer])
LostFocus
事件包括下列部分:
部分
描述
object
一个对象表达式,其值是“应用于”列表中的一个对象。
index
一个整数,它用来唯一地标识一个在控件数组中的控件。
说明
LostFocus
事件过程主要是用来对更新进行验证和确认。使用
LostFocus
可以在焦点移离控件时引进确认。这类事件过程的另一种用途与在
GotFocus
事件过程中的应用类似,可以隐藏、显示其它对象或者使它们有效或无效。也可使设置在该对象的
GotFocus
事件过程中的条件取反或对其进行更改。
如果由
Visual
Basic
所建立的
.exe
文件要显示一个由也是用
Visual
Basic
所建立的
.dll
文件所创建的对话框,则该
.exe
文件的窗体将得到
Deactivate
和
LostFocus
事件。这可能是不希望的,因为对话框将不能获得
Deactivate
事件:
如果该对象是进程外的部件。
如果该对象不是用
Visual
Basic
编写成。
在开发环境中当调用一个用
Visual
Basic
所建立的
DDL
时。
Public Class Form3 按下,显示控件,并获得焦点. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click TextBox1.Visible = True TextBox1.Focus() End Sub 判断是否获得焦点. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click If TextBox1.Focused = True Then MessageBox.Show("已经获得焦点了.") Else MessageBox.Show("已经失去焦点了.") End If End Sub 失去焦点后自动陷藏. Private Sub TextBox1_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.LostFocus TextBox1.Visible = False End Sub End Class
(1)失去焦点,拖一个文本框到页面上,选择该文本框,查看一下该文本框的事件,里面应该有文本框的焦点事件,自己查查看。
(2)如果是winform的话在控件的属性里应该有坐标的属性项可以填写。web的话需要html的布局来确定该文本框的位置。
gotfocus是获得焦点时触发,Lostfocus是失去焦点的时候触发。
比如:新建两个文本框,当点击第一个文本框的时候,则触发第一个文本框的getfocus事件,表示第一个文本框获得了焦点,可以进行操作了。然后鼠标点击第二个文本框的时候,第一个文本框首先触发lostfocus事件,标明它已经失去焦点,无法进行操作。同时第二个文本框获得焦点,允许输入数据进行操作