以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 有关DropDownBox 控件焦点 转移的问题? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=145324) |
||||||||
-- 作者:hwlzgt -- 发布时间:2020/1/16 11:27:00 -- 有关DropDownBox 控件焦点 转移的问题? 多次查阅了论坛中的贴子&帮助示例 还是不得其法,遂发贴求教! 想实现在完成DropDownBox控件下拉目录树的输入后,通过代码自动将输入焦点转移到下一个控件(tab键的下一个),却发现无法转移,只能通过鼠标点选才能再次取得输入焦点。请教是代码问题吗? frmzlgsbmlist_AfterLoad \'加载目录树 frmtr(e.Form.Controls("TreeView1"),"qryjczlgsbm") frmzlgsbmlist_DropDownOpened e.Form.DropDownBox.Select() frmzlgsbmlist_TreeView1_NodeMouseClick If
e.Form.DropTable IsNot Nothing Then \'如果是通过表下拉的 e.Form.DropDownBox.Value = e.node.Name e.Form.DropTable.FinishEditing() Else \'如果是通过窗口下拉的 Select Case
MainTable.name Case
"tblzllpzl", "tblcgcgsq" If e.node.Text <> "全部" e.Form.DropDownBox.value =
e.node.name & "_" & e.node.Text Else e.Form.DropDownBox.value =
"" End If e.Form.DropDownBox.Select() Sendkeys.Send("{tab}") Case
"qryxsddlist"
End Select End If e.Form.DropDownBox.CloseDropdown |
||||||||
-- 作者:有点蓝 -- 发布时间:2020/1/16 11:41:00 -- 我测试可以,上传实例说明 |
||||||||
-- 作者:hwlzgt -- 发布时间:2020/1/16 12:47:00 --
以上示列我改写了NodeMouseClick事件代码 If e.Node.Level = 1 Then \'如果单击的是第二层节点 Dim tr As Row = Tables("客户").Current Dim dr As DataRow = e.Node.DataRow \'获取生成此节点的DataRow tr("省市") = dr("省市") tr("县市") = dr("县市") tr("区号") = dr("区号") tr("邮编") = dr("邮编") e.Form.DropDownBox.Value = tr("县市") \'这行不是多余的,省略此行,无法在表中正常使用此下拉窗口输入数据. e.Form.DropDownBox.Select() Sendkeys.Send("{tab}") e.Form.DropDownBox.CloseDropdown()
End If |
||||||||
-- 作者:有点蓝 -- 发布时间:2020/1/16 14:35:00 -- 不能在NodeMouseClick关闭下拉窗口,这个会影响内部消息处理 DropDownClosed事件 Sendkeys.Send("{tab}") 添加一个关闭按钮,代码 e.Form.DropDownBox.CloseDropdown
|
||||||||
-- 作者:hwlzgt -- 发布时间:2020/1/16 18:45:00 -- 先谢过解答,但还是不太理解? 是否可以理解为 1、帮助 & 示例中 NodeMouseClick事件代码中的 e.Form.DropDownBox.CloseDropdown() 是有问题的? 要用其它办法关掉下拉窗口,关闭下拉窗体后再转移控件焦点。 2、再增加一个关闭按钮不是又节外生枝了,还有其途径吗?
|
||||||||
-- 作者:有点蓝 -- 发布时间:2020/1/17 8:41:00 -- e.Form.DropDownBox.CloseDropdown()没有问题,只是在目录树点击会导致窗口无法获取焦点。 没有其他途径,个人觉得,添加一个确定按钮才是合理的,毕竟有时候用户点击目录树这个节点未必就是想选用这个节点。
|