在窗口中动态创建Table

利用QueryBuilder和OutTableBuilder动态生成的表,都会出现在主界面中,使用起来和常规的表无异。
如果要在窗口中动态增加Table,则不能使用QueryBuilder和OuterTableBuilder。
Form(窗口)提供了三个方法用来在窗口中动态创建Table。

CreateSQLTable

用于创建SQLTable类型的Table,语法:

CreateSQLTable(Name, SqlText , ConnectionName)

参数说明:

Name:          控件名称
SQLText:       Select语句
ConnectionName:数据源名称

CreateSQLQuery

用于创建SQLQuery类型的Table,语法:

CreateSQLQuery(Name, SqlText , ConnectionName)

参数说明:

Name:          控件名称
SQLText:       Select语句
ConnectionName:数据源名称

CreateTable

用于创建Normal型Table,语法:

CreateTable(Name, TableName, IsCopy)

Name:      控件名称
TableName: 数据表名称
IsCopy:    逻辑型,是否作为副本,设为True作为副本。

示例一

创建一个SQLTable型Table控件,从nwind数据源中加载产品表的数据:

Dim tbl As WinForm.Table
tbl = e.Form.CreateSQLTable(
"Table1", "Select * From {产品}","nwind")
tbl.SetBounds(
10, 10, 600, 400
)
e.Form.AddControl(tbl)

示例二

创建一个SQLQuery型Table控件,加载内部数据源中的产品表:

Dim tbl As WinForm.Table
tbl = e.Form.CreateSQLQuery(
"Table1", "Select * From {产品}","")
tbl.SetBounds(
10, 10, 600, 400
)
e.Form.AddControl(tbl)

示例三

创建一个Normal型Table控件,将订单表移到窗口中:

Dim tbl As WinForm.Table
tbl = e.Form.CreateTable(
"Table1", "订单", False)
tbl.SetBounds(
10, 10, 600, 400
)
e.Form.AddControl(tbl)

示例四

创建订单表的副本:

Dim tbl As WinForm.Table
tbl = e.Form.CreateTable(
"Table1", "订单", True)
tbl.SetBounds(
10, 10, 600, 400
)
e.Form.AddControl(tbl)


本页地址:http://www.foxtable.com/webhelp/topics/2017.htm