以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]SelectedIndexChanged  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=85684)

--  作者:huhu
--  发布时间:2016/5/31 17:32:00
--  [求助]SelectedIndexChanged
SelectedIndexChanged
Dim lb As WinForm.ComboBox = e.Form.Controls("ComboBox2")
Dim gdhhh As WinForm.TextBox = e.Form.Controls("TextBox3")
If e.Sender.text = "非插卡"  Then
    lb.text = 1
    vars("scd") = True
    e.Form.Controls("TextBox3").Select
    gdhhh.Enabled = True
ElseIf e.sender.text = "插卡"  Then
    lb.text = 2
    gdhhh.Enabled = False
    Dim r As Row = e.Form.Controls("Table1").Table.AddNew
    e.Form.Controls("Table1").Table.Select(r.Index,-1)
    e.Form.Controls("Table1").Select
End If
红色的代码已经新增了行,却没有把光标定位到SN列。

--  作者:大红袍
--  发布时间:2016/5/31 17:37:00
--  

那你SN列是第几列?

 

e.Form.Controls("Table1").Table.Select(r.Index, 2)

[此贴子已经被作者于2016/5/31 17:37:16编辑过]

--  作者:huhu
--  发布时间:2016/6/1 9:23:00
--  
SN是第一列,0,1,2都不行。
感觉光标仍然定位到combox2上。

--  作者:大红袍
--  发布时间:2016/6/1 9:31:00
--  

ComboBox,SelectedIndexChanged事件

 

vars("scd") = True
Dim t As Table = e.Form.Controls("Table1").Table
Dim r As Row = t.AddNew
t.Select(r.Index,1)
e.Form.Controls("Table1").Select
t.StartEditing

 

 

Table1,ValidateEdit事件

 

static idx As Integer = 0
If idx = 1 Then
    e.cancel = True
    idx = 0
End If
If vars("scd") = True Then
    idx = 1
    e.cancel = True
    vars("scd") = False
End If


--  作者:huhu
--  发布时间:2016/6/1 13:35:00
--  
Dim lb As WinForm.ComboBox = e.Form.Controls("ComboBox2")
Dim gdhhh As WinForm.TextBox = e.Form.Controls("TextBox3")
If e.Sender.text = "非插卡"  Then
    lb.text = 1
    vars("scd") = True
    e.Form.Controls("TextBox3").Select
    gdhhh.Enabled = True
    gdhhh.SelectAll
ElseIf e.sender.text = "插卡"  Then
    lb.text = 2
    gdhhh.Enabled = False
    vars("scd") = True
    Dim t As Table = e.Form.Controls("Table1").Table
    Dim r As Row = t.AddNew
    t.Select(r.Index,0)
    e.Form.Controls("Table1").Select
    t.StartEditing    
End If
出现的情况是,选择非插卡,光标定位到textbox3正常。然后选择插卡,光标定位到新増行的SN列正常。
问题是再次选择非插卡,光标并没有定位到textbox3内,好像是停留在非插卡ComboBox2上。

--  作者:大红袍
--  发布时间:2016/6/1 14:19:00
--  

TextBox3,Validating事件

 

static idx As Integer = 0
If idx = 1 Then
    e.cancel = True
    idx = 0
End If
If vars("scd") = True Then
    idx = 1
    e.cancel = True
    vars("scd") = False
End If


--  作者:huhu
--  发布时间:2016/6/1 14:22:00
--  
textbox3代码和6楼一样。
仍然出现和5楼一样的事情。

--  作者:大红袍
--  发布时间:2016/6/1 14:34:00
--  
上传实例,我测试没问题。
--  作者:huhu
--  发布时间:2016/6/1 14:48:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目9.rar


--  作者:大红袍
--  发布时间:2016/6/1 14:52:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目9.foxdb