以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 动态控件 换行 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=175854) |
-- 作者:有点蓝 -- 发布时间:2022/3/22 8:37:00 -- Dim lbl As WinForm.Button If dr("窗口按键_按键") < > Nothing Then Dim Value As String = dr("窗口按键_按键") Dim sps() As Char = {"|"} Dim Names() As String = Value.Split(sps) dim i as integer = 40 dim t as integer = 36 For i As Integer = 0 To Names.length - 1 Dim nm As String = Names(i) lbl = e.Form.CreateControl(nm, ControlTypeEnum.Button) lbl .Text = nm lbl.name = nm lbl.Left = i lbl.Top = t lbl.Width = 35 lbl.Height = 40 e.Form.AddControl(lbl) if i mod 5 = 0 then i = 40 t = t + 40+10 else i = i + 35 + 10 end if Next
End If |
-- 作者:有点蓝 -- 发布时间:2022/3/22 20:23:00 -- For i As Integer = 0 To Names.length - 1 Dim nm As String = Names(i) lbl = e.Form.CreateControl(nm, ControlTypeEnum.Button) lbl .Text = nm lbl.name = nm lbl.Left = i1 lbl.Top = t lbl.Width = 35 lbl.Height = 40 e.Form.AddControl(lbl) If i Mod 5 = 0 Then i1 = 36 t = t + lbl.Height + 10 Else i1 = i1 + 35 End If Next End If |
-- 作者:有点蓝 -- 发布时间:2022/3/23 8:37:00 -- If i Mod 5 = 0 Then 改为 If i > 1 andalso i Mod 5 = 0 Then
|
-- 作者:有点蓝 -- 发布时间:2022/3/23 10:22:00 -- e.Form.AddControl(lbl) if i = 0 then s = s + 35 else If i Mod 5 = 0 Then s = 2 t = t + lbl.Height + 2 Else s = s + 35 End If end if
Next |
-- 作者:有点蓝 -- 发布时间:2022/3/23 11:34:00 -- For i As Integer = 0 To Names.length - 1 If i <> 0 Then If i Mod 5 = 0 Then s = 2 t = t + lbl.Height + 2 Else s = s + 35 End If End If Dim nm As String = Names(i) lbl = e.Form.CreateControl(nm, ControlTypeEnum.Button) lbl .Text = nm lbl.name = nm lbl.Left = s lbl.Top = t lbl.Width = 35 lbl.Height = 40 e.Form.AddControl(lbl) Next
|
-- 作者:有点蓝 -- 发布时间:2022/4/12 13:37:00 -- s,t这些变量,后面根本没有用到,当然没有效 |