以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]动态自动生成botton控件。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=77749)

--  作者:huhu
--  发布时间:2015/11/24 16:08:00
--  [求助]动态自动生成botton控件。
如题。
比如收货核实(3),右边自动生成3个botton,
收货核实(4),右边自动生成4个botton。
大小啊,间距都一样。
这个可以做到吗?


图片点击可在新窗口打开查看此主题相关图片如下:界面.png
图片点击可在新窗口打开查看


--  作者:大红袍
--  发布时间:2015/11/24 16:46:00
--  

控制好top、left、width、height属性

 

http://www.foxtable.com/help/topics/1409.htm

 


--  作者:huhu
--  发布时间:2015/11/24 17:20:00
--  
我的是talctrol,有不同的page,希望在page1做自动加入的事情。或者有什么更好的办法显示。
下面是我写的固定控件(非自动创建),红色的代码怎么改一下,希望入库单号和预入库单的每一个的入库单号进行比较一下,统计出数量。
Dim shhs As WinForm.Button = e.Form.Controls("收货核实")
Dim sum As Integer
sum = DataTables("预入库单").Compute("count(入库单号)","标志 = false")
shhs.text = "收货核实(" & sum & ")"
Dim rkdh1 As WinForm.Button = e.Form.Controls("入库单号1")
Dim rkdh2 As WinForm.Button = e.Form.Controls("入库单号2")
Dim rkdh3 As WinForm.Button = e.Form.Controls("入库单号3")
Dim rkd As List(of String)
Dim s As String
rkd = DataTables("预入库单").GetValues("入库单号","标志 = false")
Dim n1,n2,n3 As Integer

n1 = Tables("预入库单").Compute("sum(数量)","入库单号 = \'A111\'")
n2 = Tables("预入库单").Compute("sum(数量)","入库单号 = \'A222\'")
n3 = Tables("预入库单").Compute("sum(数量)","入库单号 = \'A333\'")


rkdh1.text = "预入库单号1:" &  rkd(0) & "- - -(" & n1 & ")台"
rkdh2.text = "预入库单号2:" &  rkd(1) & "- - -(" & n2 & ")台"
rkdh3.text = "预入库单号3:" &  rkd(2) & "- - -(" & n3 & ")台"

--  作者:大红袍
--  发布时间:2015/11/24 17:28:00
--  
Dim p As WinForm.TabPage = e.form.controls("TabControl1").tabpages("pagee1")
Dim rkd As List(of String)
rkd = DataTables("预入库单").GetValues("入库单号","标志 = false")
Dim idx As Integer = 1
For Each rk As String In rkd
    Dim sum As String = Tables("预入库单").Compute("sum(数量)","入库单号 = \'" & rk & "\'")
    Dim btn As WinForm.button
    btn = e.Form.CreateControl("btn" & rk, ControlTypeEnum.Button)
    btn.Text = "预入库单号" & idx & ":" &  rk & "- - -(" & sum & ")台"
    btn.Left = 100
    btn.Top = idx * 30
    p.AddControl(btn)
    idx += 1
Next

--  作者:huhu
--  发布时间:2015/11/24 19:35:00
--  
只显示了预入库单号,没显示全啊。
另外控件的字体大小,样式,背景颜色该怎么控制,比较好看一点。

图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看


--  作者:大红袍
--  发布时间:2015/11/24 19:44:00
--  

btn.width = 200
btn.height = 50
btn.font = new font("宋体", 12)
btn.FlatStyle = FlatStyle.flat
btn.BackColor = Color.Transparent
btn.BorderSize = 0

--  作者:huhu
--  发布时间:2015/11/24 20:02:00
--  
哦。那这种情况下,我要单击某个btn,弹出窗口。forms("扫描入库").open.我需要写到哪里?
--  作者:大红袍
--  发布时间:2015/11/24 20:05:00
--  

去编写窗口的click事件

 

If e.Sender.Name = "xxx" then

    forms("扫描入库").open

End If


--  作者:huhu
--  发布时间:2015/11/24 20:39:00
--  
打开扫描窗口。有一个button控件,希望label控件的内容和之前的btn控件的内容一样。
Dim yrkdh As WinForm.Button = e.Form.Controls("预入库单号")
yrkdh.text = ????
怎么去判断点击的哪个btn名称?

--  作者:大红袍
--  发布时间:2015/11/24 20:42:00
--  

去编写窗口的click事件

 

If e.Sender.Name like "btn*" then

    msgbox(e.sender.name.replace("btn", ""))

    forms("扫描入库").open

End If