Office中国论坛/Access中国论坛

标题: 如何用获得焦点做条件 [打印本页]

作者: lyyggb    时间: 2005-12-22 18:06
标题: 如何用获得焦点做条件
例如,如果List1获得焦点(或更新后)时,按钮Command1执行A命令; 如果List1失去焦点时,Command1则执行B命令
作者: 一点通    时间: 2005-12-22 18:19
呵呵,有点象是出试题一样

设定一个变量,当List1获得焦点及失去焦点时改变变量的值,并同时Call Command1,

在Command1命令按钮事件中用IF根据变量值情况执行不同的代码.
作者: sxgaobo    时间: 2005-12-22 18:57
if List1.SetFocus=true then

   a

else

  b

end if
作者: lyyggb    时间: 2005-12-22 19:18
以下是引用sxgaobo在2005-12-22 10:57:00的发言:


if List1.SetFocus=true then

   a

else

  b

end if

好像不行哦,好像不能这样用的? List1.setfocus=true
作者: lyyggb    时间: 2005-12-22 19:31
以下是引用lyyggb在2005-12-22 10:06:00的发言:


例如,如果List1获得焦点(或更新后)时,按钮Command1执行A命令; 如果List1失去焦点时,Command1则执行B命令

"如果List1获得焦点",这个语句应该怎么写?

List1.setfocus=true好像不行
作者: lanchong    时间: 2005-12-22 23:24
标题: 有正途不走
以下是引用一点通在2005-12-22 10:19:00的发言:


呵呵,有点象是出试题一样

设定一个变量,当List1获得焦点及失去焦点时改变变量的值,并同时Call Command1,

在Command1命令按钮事件中用IF根据变量值情况执行不同的代码.



Public BLListFocus As Boolean

Private Sub List1_GotFocus()
    BLListFocus = True
End Sub

Private Sub List1_LostFocus()
    BLListFocus = False
End Sub

Private Sub Command1_Click()
On Error GoTo Err_Command1_Click


    Screen.PreviousControl.SetFocus '这句是关键,当去按command1时,list或其他控件就已发生失去焦点事件,所以要先回到前物件的控制
   
    MsgBox BLListFocus

if BLListFocus then



   a



else



  b



end if

Exit_Command1_Click:
    Exit Sub

Err_Command1_Click:
    MsgBox err.Description
    Resume Exit_Command1_Click
   
End Sub





欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3