以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- 历遍控件的顺序 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=105669) |
-- 作者:lur320 -- 发布时间:2017/8/23 21:55:00 -- 历遍控件的顺序 我是建了1个trackbar,然后复制了8个。 用下面的命令历遍控件。 但是发现不是按照先后顺序,是跳着历遍的,这个顺序是怎么定的? For Each c As WinForm.Control In e.Form.Controls If Typeof c Is WinForm.trackbar Then Dim t As WinForm.trackbar = c For Each cl As DataCol In DataTables("or3d").DataCols If t.name & "_pec"=cl.name Then Dim lbl As WinForm.Label lbl = e.Form.CreateControl("completerate" & i,ControlTypeEnum.Label) lbl.text=t.value & "Set " lbl.Left=t.left-50 lbl.Top=t.Top+25 lbl.AutoSize=True lbl.TopMost=False e.Form.AddControl(lbl) i+=1 因为后面要引用lbl的名字,但是历遍不是按照trackbar的顺序历遍,到时加载的控件也是错误的顺序。 |
-- 作者:有点甜 -- 发布时间:2017/8/23 22:17:00 -- 你trackbar的名字不能命名成规律的?如果 trackbar1、trackbar2、trackbar3
这样你直接用代码不就可以遍历?
For i As Integer = 1 to 8 Dim cl = e.Form.Controls("trackbar" & i) Next |
-- 作者:lur320 -- 发布时间:2017/8/23 22:46:00 -- trackbar的名字是和1个表格里面的名字一致的。 例如output_quantity。就和1个表格的col一致,用来抓和行数据。
|
-- 作者:有点甜 -- 发布时间:2017/8/23 23:23:00 -- 你要做什么做个例子上来看看。 |