以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  焦点一直在dropbox控件上,回车及Tab都不管用  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=57900)

--  作者:baoxyang
--  发布时间:2014/10/7 14:55:00
--  焦点一直在dropbox控件上,回车及Tab都不管用
S解除异常锁定_DropBox1_KeyDown

Dim drp As WinForm.DropDownBox = e.sender
If drp.DroppedDown Then \'如果下拉窗口已经打开
    Dim tbl As Table = Tables("S选择客户_Table1")
    If e.KeyCode = Keys.Up Then \'如果按下的是上箭头按键
        tbl.Position = tbl.Position - 1 \'向上移动一行
        e.Cancel = True
    ElseIf e.KeyCode = Keys.Down Then \'如果按下的是下箭头按键
        tbl.Position = tbl.Position + 1 \'向下移动一行
        e.Cancel = True
    ElseIf e.KeyCode = Keys.Space Then \'如果按下的是下箭头按键
           Dim t As String = e.sender.value
           Dim ss As String
              If t = "" Then
                 ss = "select 客户编号,客户简称 from {托运客户} where 是否锁定 = \'否\' and 分公司 = \'"& Vars("分公司") &"\'"
              End If
            Tables("S选择客户_Table1").Fill(ss,"baox",True)
            Dim tg As String = "客户编号,80|客户简称,120"
            Functions.Execute("显示列",Tables("S选择客户_Table1"),tg)
    End If
End If

S解除异常锁定_DropBox1_KeyPress

Dim drp As WinForm.DropDownBox = e.Sender
If drp.DroppedDown = False \'如果下拉窗口没有打开
    drp.OpenDropDown() \'打开下拉窗口
End If

S解除异常锁定_DropBox1_TextChanged

Dim drp As WinForm.DropDownBox = e.sender
Dim s As String = drp.Text
   If drp.DroppedDown Then \'如果下拉窗口已经打开
       Dim n As Integer = s.length
       Dim ss1 As String = "select * from {托运客户} where LEFT(快捷键,"& n &") = \'"& s &"\' and 是否锁定 = \'否\' and 分公司 = \'"& Vars("分公司") &"\'"
       Tables("S选择客户_Table1").Fill(ss1,"baox",False)
       Dim tg As String = "客户编号,80|客户简称,120"
       Functions.Execute("显示列",Tables("S选择客户_Table1"),tg)
   End If

S解除异常锁定_DropBox1_Validating

Dim drp As WinForm.DropDownBox = e.Sender
If drp.DroppedDown = False \'如果下拉窗口没有打开
    drp.OpenDropDown() \'打开下拉窗口
End If
焦点一直在dropbox控件上,回车及Tab都不管用。


--  作者:baoxyang
--  发布时间:2014/10/7 14:57:00
--  

最新版新增控件dropbox才会,之前版本已存在的正常。


--  作者:有点甜
--  发布时间:2014/10/7 14:59:00
--  

这段代码有问题,删除,或者改变判断逻辑。

 

Dim drp As WinForm.DropDownBox = e.Sender
If drp.DroppedDown = False \'如果下拉窗口没有打开
    drp.OpenDropDown() \'打开下拉窗口
End If


--  作者:baoxyang
--  发布时间:2014/10/7 15:49:00
--  

哦。之前的范例照搬的,之前代码一样的没有问题。这个代码确实有问题。


--  作者:baoxyang
--  发布时间:2014/10/7 15:49:00
--  
谢谢指点!