以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  对动态增加控件的字体及位置的设置  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=14426)

--  作者:kevin
--  发布时间:2011/11/18 17:44:00
--  对动态增加控件的字体及位置的设置

以下代码是单击某个按钮,能够向窗口中加入一个标签的例子:

 

Dim lbl As WinForm.Label
lbl
= e.Form.CreateControl("lable1", ControlTypeEnum.Label)
lbl
.Text = "Foxtable"
lbl
.Left = 100
lbl
.Top = 100
e
.Form.AddControl(lbl)

 

我希望对动态增加控件的字体及位置的设置,例如字符的文本位置(左对刘、右对齐、居中对齐),字体的设置;

那么这样的代码如何搞呢? 


--  作者:狐狸爸爸
--  发布时间:2011/11/18 17:53:00
--  

Dim lbl As WinForm.Label
lbl = e.Form.CreateControl("lable1", ControlTypeEnum.Label)
lbl.Text = "Foxtable"
lbl.Left = 100
lbl.Top = 100
lbl.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
lbl.Font =  Font("黑体",12,FontStyle.Underline)
e.Form.AddControl(lbl)
 
参考:
http://www.foxtable.com/help/topics/0494.htm

 


--  作者:kevin
--  发布时间:2011/11/18 18:20:00
--  
狐爸,这代码提示错误!
--  作者:程兴刚
--  发布时间:2011/11/18 18:51:00
--  
问题是看您放在哪里?
--  作者:kevin
--  发布时间:2011/11/18 19:00:00
--  

是放在窗体中。

 


--  作者:czy
--  发布时间:2011/11/18 20:58:00
--  
Dim lbl As WinForm.Label
lbl = e.Form.CreateControl("lable1", ControlTypeEnum.Label)
lbl.Text = "Foxtable"
lbl.Left = 100
lbl.Top = 100
lbl.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
lbl.Font =  New Font("黑体",12,FontStyle.Underline)
e.Form.AddControl(lbl)

--  作者:sunion0769
--  发布时间:2018/3/3 23:18:00
--  
我想问一下,如果是要一次增加多个标签呢?假设标签lable内容标题与表A第一列的每一行一一对应?
--  作者:有点甜
--  发布时间:2018/3/4 14:19:00
--  
以下是引用sunion0769在2018/3/3 23:18:00的发言:
我想问一下,如果是要一次增加多个标签呢?假设标签lable内容标题与表A第一列的每一行一一对应?

 

For Each r As Row In Tables("表A").rows
    Dim lbl As WinForm.Label
    lbl = e.Form.CreateControl("lable1", ControlTypeEnum.Label)
    lbl.Text = r("第一列")
    lbl.Left = 100
    lbl.Top = 50 * r.index
    lbl.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
    lbl.Font =  New Font("黑体",12,FontStyle.Underline)
    e.Form.AddControl(lbl)
Next