老师您好!
我设计了一个变压器型号输入下拉窗口,用了帮助中的“自定义输入界面之二和之三”两个模式。用了之二时,textbox输入不进去任何字符,用了之三时仅输入一个字符就出现错误信息。我的变压器型号的数据全是字符型,不过一般是:ssz11-10000-100等内容。ssz11是变压器类型,10000是容量,100是等级。
我的部分代码为:textbox1的textchanged代码:
Dim txt As String = e.Form.Controls("TextBox1").Text
Dim tbl As Table = Tables("变压器型号输入_Table1")
If txt = "" Then
tbl.Filter = ""
Else
txt = "'%" & txt & "%'"
'tbl.Filter = "变压器型号 Like " & txt & " Or 变压器类型 Like " & txt & " Or 变压器容量 like " & txt & " Or 电压等级 Like " & txt
tbl.Filter =" 变压器类型 Like " & txt & " Or 变压器容量 like " & txt & " Or 电压等级 Like " & txt
End If
keydown代码:
Dim tbl As Table = Tables("变压器型号输入_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.Enter Then
If tbl.Current IsNot Nothing Then
e.Form.DropDownBox.Value = tbl.Current("变压器型号")
e.Form.DropDownBox.Value = tbl.Current("变压器类型")
e.Form.DropDownBox.Value = tbl.Current("变压器容量")
e.Form.DropDownBox.Value = tbl.Current("电压等级")
End If
e.Cancel = True
e.Form.DropDownBox.CloseDropDown()
End If
e.Cancel = True
table控件doubleclick:
Dim tbl As Table = Tables("变压器型号输入_Table1")
If tbl.Current IsNot Nothing Then
e.Form.DropDownBox.Value = tbl.Current("变压器型号")
Tables("ddpsb").Current("变压器类型") = tbl.Current("变压器类型")
Tables("ddpsb").Current("变压器容量") = tbl.Current("变压器容量")
Tables("ddpsb").Current("电压等级") = tbl.Current("电压等级")
End If
e.Form.DropDownBox.CloseDropDown()