以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]动态创建表结构后,能否设置列的扩展类型 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=143991) |
||||
-- 作者:天一生水 -- 发布时间:2019/12/8 16:07:00 -- [求助]动态创建表结构后,能否设置列的扩展类型 老师好! 发布后的程序,可以创建表,设置列类型;但设置的列扩展类型(图片、文件、多值字段等),重启项目后就丢失了。是不是这样的,不允许这样操作? 谢谢! |
||||
-- 作者:有点蓝 -- 发布时间:2019/12/8 21:44:00 -- 动态创建的表需要动态设置扩展列类型:http://www.foxtable.com/webhelp/topics/1656.htm |
||||
-- 作者:天一生水 -- 发布时间:2019/12/8 22:07:00 -- 我是按老师说的这样做的,代码如下,重启项目后,[备注]列单元格中的按钮就没有了。
\'1、创建表 Dim Builder As New ADOXBuilder Dim tbl As ADOXTable Builder.Open() tbl = Builder.NewTable("订单") \'创建表 With tbl .AddColumn("日期" ,ADOXType.DateTime) .AddColumn("产品" ,ADOXType.String, 12) .AddColumn("客户" ,ADOXType.String, 20) .AddColumn("数量" ,ADOXType.Integer) .AddColumn("备注" ,ADOXType.Text) End With Builder.AddTable(tbl) \'增加表 Builder.Close() DataTables.load("订单") MainTable = Tables("订单") \'2、设置扩展列为图片列 DataTables("订单").DataCols("备注").ExtendType = ExtendTypeEnum.Images \'3、添加一行数据 Syscmd.Row.AddNew |
||||
-- 作者:有点蓝 -- 发布时间:2019/12/8 23:07:00 -- 方法1、afteropenproject事件 If DataTables.Contains("订单") Then DataTables("订单").DataCols("备注").ExtendType = ExtendTypeEnum.Images End If 2、重启后到列属性里重新设置 |
||||
-- 作者:天一生水 -- 发布时间:2019/12/9 8:36:00 -- 老师好! 但是这两种方法都不能在发布好的客户端实现。 第二种方法中,重启后,鼠标右键点击表标题,弹出表标题菜单,除了“列属性”不能用以外,其他的均可使用。 不应该是限制了吧?客户录入数据的时候非常需要,但开发者开发时却不一定设置。
此主题相关图片如下:截屏图片.jpg |
||||
-- 作者:有点蓝 -- 发布时间:2019/12/9 9:20:00 -- 建表本来就应该是开发人员的工作。如果都留给用户自己建表肯定是有一些问题的。比如没有表事件,没有表属性、列属性可以设置。并且各种代码设置表属性后,重启项目后都必须重新使用代码设置才能使用的 这种动态创建的表建议都放到窗口表里使用,需要的使用调用一下类似4楼的代码给表设置各种属性。
|