以文本方式查看主题 - 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=139649) |
-- 作者:sky-18 -- 发布时间:2019/8/18 14:14:00 -- 百思不得其解 这里写了一段动态增加checkbox控件的代码,并对控件的text属性赋值。 但是,当通过变量对text属性赋值时,只能成功的对第一个控件赋值。而后面的控件均赋值不成功 而,不通过变量,直接用 “测试” 这样的常量赋值却能成功。 百思不得其解,,老师们指点一下。 Dim tag As WinForm.CheckBox For i As Integer = 0 To bqs.Length-1 tag = e.Form.CreateControl(bqs(i), ControlTypeEnum.CheckBox) tag.Width = 70 tag.Height = 22 tag.Left = (i Mod 3)*75 + 5 tag.Top= (i\\3)*27 + 5 tag.Text = bqs(i) ‘这里用变量赋值,只能成功的对第一个控件赋值。 tag.Appearance = Appearance.Button e.Form.Controls("fq2").Panel2.AddControl(tag) Next Dim tag As WinForm.CheckBox For i As Integer = 0 To bqs.Length-1 tag = e.Form.CreateControl(bqs(i), ControlTypeEnum.CheckBox) tag.Width = 70 tag.Height = 22 tag.Left = (i Mod 3)*75 + 5 tag.Top= (i\\3)*27 + 5 tag.Text = "测试" \'换成用常量赋值就能成功了 tag.Appearance = Appearance.Button e.Form.Controls("fq2").Panel2.AddControl(tag) Next |
-- 作者:y2287958 -- 发布时间:2019/8/18 14:21:00 -- 我这里测试正常,请上实例测试 |
-- 作者:sky-18 -- 发布时间:2019/8/18 14:24:00 -- If FileSys.FileExists(ProjectPath & "标签.txt") Then Dim bq As String = FileSys.ReadAllText(ProjectPath & "标签.txt") bq = bq.Trim(vbcrlf) Dim bqs() As String bqs = bq.Split(Chr(13)) If bqs.Length = 0 Then MessageBox.Show("标签文档里面没有标签信息!") Else Dim tag As WinForm.CheckBox For i As Integer = 0 To bqs.Length-1 tag = e.Form.CreateControl(bqs(i), ControlTypeEnum.CheckBox) tag.Width = 70 tag.Height = 22 tag.Left = (i Mod 3)*75 + 5 tag.Top= (i\\3)*27 + 5 tag.Text = "测试" \'换成这样就可以了 tag.Appearance = Appearance.Button e.Form.Controls("fq2").Panel2.AddControl(tag) Next End If Else MessageBox.Show("请创建标签文档!") End If 这是窗口 afterload事件的代码。莫非是我电脑的问题??
|
-- 作者:sky-18 -- 发布时间:2019/8/18 14:25:00 -- 我重启看看。 |
-- 作者:sky-18 -- 发布时间:2019/8/18 14:36:00 -- 解决了,,原来是我忘了去掉bqs(i)后面的Chr(10)字符 谢谢大家帮忙
|