Foxtable(狐表)用户栏目专家坐堂 → 请教:动态生成的窗口工具栏与表问题


  共有2371人关注过本帖树形打印复制链接

主题:请教:动态生成的窗口工具栏与表问题

帅哥哟,离线,有人找我吗?
y2287958
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4753 积分:34573 威望:0 精华:0 注册:2008/8/31 22:44:00
请教:动态生成的窗口工具栏与表问题  发帖心情 Post By:2020/4/13 10:53:00 [只看该作者]

如题。具体见附件。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.table

一、说明:用以下代码可以生成一个窗口、工具栏和表

'''
Forms("窗口1").Close
Forms("窗口1").Open(-1000,-1000)

Dim 窗口 As New system.Windows.Forms.Form  '声明动态窗口
窗口.Text = "恢复删除记录"
窗口.Width = 500   '宽度
窗口.Height = 400   '高度
Dim 工具栏 As WinForm.Strip = Forms("窗口1").Strips.Add("工具栏_表A", 1)
窗口.controls.add(工具栏.basecontrol)
'窗口.parent.controls.add(工具栏.basecontrol)  '原来这个用法是可以的,这里

If DataTables.Contains("窗口1_表A") Then DataTables.Unload("窗口1_表A")
Dim 窗口表 As WinForm.Table = Forms("窗口1").CreateSQLQuery("表A", "S elect * From {表A}", "")  '生成[已删除]且为[今天]记录的表
窗口表.Dock = 5  '充满
Forms("窗口1").AddControl(窗口表)
窗口.Controls.Add(窗口表.BaseControl)

窗口.Show

二、问题:窗口工具栏遮住了窗口表的表头。

1、在窗口表Dock设置为充满时,如何避免工具栏遮住了表头?

2、原来这个用法是可以的:窗口.parent.controls.add(工具栏.basecontrol),但在这里却出现以下提示。

---------------------------
版本:2020.1.19.19
---------------------------
代码执行出错,错误信息:  System.NullReferenceException: Object reference not set To an instance of an object.    at UserCode.Test()
---------------------------
确定  
---------------------------

如何解决?谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/13 11:05:00 [只看该作者]

1、把窗口表控件设置为顶层,什么设置自己查.net的文档

2、声明的动态窗口是一个单独的窗口,默认是不可能有parent属性的,也就是parent是空值,不理解为什么以前可以!

foxtable的独立窗口也是一样的道理,是不可能有parent的
Output.Show(Forms("窗口2").baseform.parent Is Nothing)

 回到顶部
帅哥哟,离线,有人找我吗?
y2287958
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4753 积分:34573 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2020/4/13 14:04:00 [只看该作者]

图片点击可在新窗口打开查看

 回到顶部