以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] 发布后的项目,如何动态执行代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=42374)

--  作者:lsy
--  发布时间:2013/11/9 16:49:00
--  [求助] 发布后的项目,如何动态执行代码

窗口的AfterLoad事件中,如下代码,动态增加控件:

Dim lbl0 As WinForm.Label
lbl0 = e.Form.CreateControl("lable0", ControlTypeEnum.Label)
lbl0.Text = "起始日期"
lbl0.Left = 0
lbl0.Top = 55
e.Form.Controls("Panel2").AddControl(lbl0)

Dim lbl1 As WinForm.Label
lbl1 = e.Form.CreateControl("lable1", ControlTypeEnum.Label)
lbl1.Text = "产品名称"
lbl1.Left = 0
lbl1.Top = 105
e.Form.Controls("Panel2").AddControl(lbl1)

Dim txt0 As WinForm.TextBox
txt0 = e.Form.CreateControl("TextBox1", ControlTypeEnum.TextBox)
txt0.Left = 50
txt0.Top = 50
e.Form.Controls("Panel2").AddControl(txt0)

Dim txt1 As WinForm.TextBox
txt1 = e.Form.CreateControl("TextBox2", ControlTypeEnum.TextBox)
txt1.Left = 50
txt1.Top = 100
e.Form.Controls("Panel2").AddControl(txt1)

 

作为开发者,随时可以改变代码,动态增加不同的控件,改变控件布局。

 

现在需要,将不同的代码输出、保存到文本文件。

在项目发布后,让最终用户选择(当然,不会允许编辑)执行不同的代码,从而生成不同的控件,或改变控件布局。

 

各位大虾、小蟹,请指教。


--  作者:Bin
--  发布时间:2013/11/9 16:52:00
--  
呵呵,你应该把需要增加的控件弄成动态判断,让用户选择.

而不是执行代码.

比如一个下拉框 然后用户选择TextBox 那么就动态增加TextBox  选择的是Label 就动态增加Label  自行在代码里判断.

--  作者:lsy
--  发布时间:2013/11/9 16:54:00
--  

不是这样简单,这是动态报表的前奏。

像楼上那样处理,太繁琐了。


--  作者:Bin
--  发布时间:2013/11/9 16:56:00
--  
那么可以考虑这也做.http://www.foxtable.com/help/topics/1487.htm
--  作者:lsy
--  发布时间:2013/11/9 16:56:00
--  
报表是不断增加的,控件也是不断变化的,开发者或管理员设定代码,操作员选择执行。
--  作者:Bin
--  发布时间:2013/11/9 16:57:00
--  
看看4楼是否可以满足你需求.
--  作者:lsy
--  发布时间:2013/11/9 17:01:00
--  
以下是引用Bin在2013-11-9 16:57:00的发言:
看看4楼是否可以满足你需求.

可以考虑,不过还是选择执行代码简单,要是能实现,专业报表,就真的名副其实了。