以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  ConfigBar集合中的控件无法动态添加  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=53509)

--  作者:不倒的翁
--  发布时间:2014/7/9 15:36:00
--  ConfigBar集合中的控件无法动态添加
主窗口加载代码,无法动态添加控件。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目8.foxdb

以前的老项目代码动态添加可行,用新版本重新做的项目发现用不了了。。。
[此贴子已经被作者于2014-7-9 15:42:01编辑过]

--  作者:Bin
--  发布时间:2014/7/9 15:42:00
--  
QAT.Visible = False
ApplicationMenu.Visible = False
Syscmd.Project.OpenUserMenu()
configbar.Items.Clear
For Each r As Row In Tables("表A").Rows
    Dim bt As New RibbonMenu.Button(r("第一列"))
    With bt
        .AutoHideText = False
        .Text = r("第一列")
    End With

        configbar.Items.Add(bt)
Next

--  作者:不倒的翁
--  发布时间:2014/7/9 15:52:00
--  
以下是引用Bin在2014-7-9 15:42:00的发言:
QAT.Visible = False
ApplicationMenu.Visible = False
Syscmd.Project.OpenUserMenu()
configbar.Items.Clear
For Each r As Row In Tables("表A").Rows
    Dim bt As New RibbonMenu.Button(r("第一列"))
    With bt
        .AutoHideText = False
        .Text = r("第一列")
    End With

        configbar.Items.Add(bt)
Next

甜版,发布后的项目依然无效。


--  作者:Bin
--  发布时间:2014/7/9 15:54:00
--  
没有问题的,你不要放到主窗口的AlterLoad事件 放到 ALterOpenPprject去
--  作者:有点甜
--  发布时间:2014/7/9 15:58:00
--  

不要设置成自动打开,在afterOpenProject里加入代码打开Forms("窗口1").open

 

测试有效


--  作者:不倒的翁
--  发布时间:2014/7/9 16:01:00
--  
以下是引用有点甜在2014-7-9 15:58:00的发言:

不要设置成自动打开,在afterOpenProject里加入代码打开Forms("窗口1").open

 

测试有效

谢谢甜版。问题是解决了。但这个逻辑关系好像不太对,窗口在自动打开状态下AfterLoad事件对代码的运行是有效的,为什么这个就不行呢?


--  作者:有点甜
--  发布时间:2014/7/9 16:10:00
--  
以下是引用不倒的翁在2014-7-9 16:01:00的发言:

谢谢甜版。问题是解决了。但这个逻辑关系好像不太对,窗口在自动打开状态下AfterLoad事件对代码的运行是有效的,为什么这个就不行呢?

 

设置自动打开的时候,可能是先生成打开了窗口,但这个时候,表数据或表还没有加进来,导致无效;或者是,生成以后,又被原先的菜单覆盖了。


--  作者:不倒的翁
--  发布时间:2014/7/9 16:12:00
--  
以下是引用有点甜在2014-7-9 16:10:00的发言:

 

设置自动打开的时候,可能是先生成打开了窗口,但这个时候,表数据或表还没有加进来,导致无效;或者是,生成以后,又被原先的菜单覆盖了。

了解了。