以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 按自定义录入界面之三的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=16924) |
-- 作者:ywlin521 -- 发布时间:2012/2/27 18:28:00 -- 按自定义录入界面之三的问题 按 自定义录入界面之三 的步骤,居然不能输入内容,太奇怪了 [此贴子已经被作者于2012-2-27 18:28:31编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2012/2/27 18:55:00 -- 帮助的代码都是经过测试的,不会有问题的。 |
-- 作者:ywlin521 -- 发布时间:2012/2/28 10:28:00 -- 这是代码,其中 Messagebox都是调试用的,是用全局表事件,看下代码哪里会有问题 Select e.Table.Name Case "tbStudentInfo" Case "tbClass" If e.Col.Name = "名称" Then If "" = e.Row("校区") Then MessageBox.Show("请输入校区") e.Cancel = True End If
If e.Text <> "" Then Dim cmd As New SQLCommand cmd.ConnectionName = connName cmd.CommandText = "SELECT COUNT(*) FROM {tbClass} WHERE [期次] = \'" & e.Row("期次") & "\' AND [校区] = \'" & e.Row("校区") & "\' AND [名称] = \'" & e.Text & "\' AND _Identify <> \'" & e.Row("_Identify") & "\'"
If cmd.ExecuteScalar() > 0 Then MessageBox.Show("班级已经存在,请重新输入!") e.Cancel = True End If End If ElseIf e.Col.Name = "班主任" If e.Col.DroppedDown Then \'如果下拉窗口已经打开 e.Col.CloseDropDown() \'则关闭下拉窗口 End If End If Case Else
End Select Select e.Table.Name Case "tbClass" If e.Col.Name = "班主任" Then \'如果编辑的是客户ID列 If e.Col.DroppedDown Then \'如果下拉窗口已经打开 Dim tbl As Table = Tables("班主任查找窗口_Table1") Dim strSelect As String = "Select 编号,姓名,拼音,状态,工种,部门校区,岗位 From {tbTeacherInfo} Where " If e.Text = "" Then strSelect &= " [_Identify] Is Null" Else strSelect &= " 拼音 LIKE \'%" & e.Text & "%\'" End If tbl.Fill(strSelect,connName,True) tbl.AutoSizeCols() Else MessageBox.Show(1) e.Col.OpenDropDown() End If End If
Case Else
End Select Select e.Table.Name Case "tbClass" If e.Col.Name = "班主任" Then If e.Col.DroppedDown = False Then MessageBox.Show(2) e.Col.OpenDropDown() \'打开下拉窗口 End If End If Case Else End Select Select e.Table.Name Case "tbClass" If e.Col.Name = "班主任" Then \'如果编辑的是客户 ID列 If e.Col.DroppedDown Then \'如果下拉窗口已经打开 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 End If Else MessageBox.Show(3) e.Col.OpenDropDown() End If End If Case Else End Select [此贴子已经被作者于2012-2-28 10:30:27编辑过]
|
-- 作者:ywlin521 -- 发布时间:2012/2/28 10:32:00 -- MessageBox.show()都执行了,就e.Col.OpenDropDown()好象没有执行,也没有提示出错之类的,窗口就是没有 |
-- 作者:ywlin521 -- 发布时间:2012/2/28 10:54:00 -- 问题已经解决了,加 NewTb.Cols("班主任").DropForm = "班主任查找窗口" 班主任列修改为可以直接输入就可以了,谢谢 |