以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 打开表就自动打开对应的主窗口 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=112796) |
-- 作者:cd_tdh -- 发布时间:2018/1/3 7:55:00 -- 打开表就自动打开对应的主窗口 如题,打开表时不用打开窗口代码,能否直接打开对应的主窗口。 |
-- 作者:有点甜 -- 发布时间:2018/1/3 8:45:00 -- 参考
For Each f As WinForm.Form In forms http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=97468&skin=0
|
-- 作者:cd_tdh -- 发布时间:2018/1/3 11:25:00 -- 以下是引用有点甜在2018/1/3 8:45:00的发言:
参考
For Each f As WinForm.Form In forms http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=97468&skin=0
老师,没看明白, 比如我表名为“业绩管理”,采用的窗口表,主窗口的名称为“业绩管理窗口”,表控件是绑定到“业绩管理”。执行结果是:“业绩管理窗口 业绩管理 False 5” 怎么来打开呢? |
-- 作者:有点甜 -- 发布时间:2018/1/3 12:22:00 -- For Each f As WinForm.Form In forms If f.TableName = "业绩管理" AndAlso f.formstyle = 5 Then f.open Exit For End If Next |
-- 作者:cd_tdh -- 发布时间:2018/1/3 18:18:00 -- 老师,不对所有主窗口实用呢,不是所有的主窗口的formstyle都为5 主窗口有没单独的一个类别来区分?
|
-- 作者:有点甜 -- 发布时间:2018/1/3 22:06:00 -- 如果类型是【主窗口】,就是5,执行下可知
For Each item As object In [Enum].GetValues(Gettype(FormStyleEnum))
你的窗口是别的类型吧?
|
-- 作者:cd_tdh -- 发布时间:2018/1/4 9:06:00 -- 以下是引用有点甜在2018/1/3 22:06:00的发言:
如果类型是【主窗口】,就是5,执行下可知
For Each item As object In [Enum].GetValues(Gettype(FormStyleEnum))
你的窗口是别的类型吧?
执行出来,主窗口是5,单确实存在我说的情况,昨天还有几个是对的,只有一个5了,其他的注窗口全部是0
此主题相关图片如下:11.png 此主题相关图片如下:2.png 此主题相关图片如下:3.png [此贴子已经被作者于2018/1/4 9:14:39编辑过]
|
-- 作者:cd_tdh -- 发布时间:2018/1/4 9:22:00 -- 应该是先打开表下的所有窗口才能获取到formstyle的类型,在关闭不是主窗口的窗口,但会闪屏,怎么解决呢? f.open(-2000,-2000)还是都不行。 [此贴子已经被作者于2018/1/4 9:34:29编辑过]
|
-- 作者:有点甜 -- 发布时间:2018/1/4 10:12:00 -- 以下是引用cd_tdh在2018/1/4 9:22:00的发言:
应该是先打开表下的所有窗口才能获取到formstyle的类型,在关闭不是主窗口的窗口,但会闪屏,怎么解决呢? f.open(-2000,-2000)还是都不行。 [此贴子已经被作者于2018/1/4 9:34:29编辑过]
嗯,是的,窗口打开后才能获取formstyle类型。
一般情况,你窗口在发布前、使用前,都是已经做好了的吧?那就把窗口信息用一个表记录起来,查找表找到对应的窗口。
你在开发完成后,循环所有窗口,打开,然后给表格赋值,保存,即可。 |
-- 作者:cd_tdh -- 发布时间:2018/1/4 11:36:00 -- 以下是引用有点甜在2018/1/4 10:12:00的发言:
嗯,是的,窗口打开后才能获取formstyle类型。
一般情况,你窗口在发布前、使用前,都是已经做好了的吧?那就把窗口信息用一个表记录起来,查找表找到对应的窗口。
你在开发完成后,循环所有窗口,打开,然后给表格赋值,保存,即可。 我只开发自己公司的,一边使用,一边开发的,只有把打开的窗口位置放外面去了。 |