急:ChangeMenu()后,如何控制菜单的enabled属性?

乐不 2005-08-16 03:00:58
我的窗口w_main的菜单开始是m_main,后来用ChangeMenu()函数来切换了菜单,此时如何用代码控制菜单m_new的enabled属性呢???
现在 w_main.ChangeMenu(m_new)后再用
if isvalid(m_new) then
m_new.m_file.m_11.enabled=false
end if
没有起作用,就是说m_new还是isvalid(m_new)=false,请问大虾们,该如何处理才能控制切换后菜单的enabled属性呢???
...全文
280 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
rightyeah 2005-08-26
  • 打赏
  • 举报
回复
我个人比较喜欢这样的用法:
f_search_menu(w_main.menuid,'menu_id').enabled=true
f_search_menu(w_main.menuid,'menu_id').visible=true

$PBExportHeader$f_search_menu.srf
global type f_search_menu from function_object
end type

forward prototypes
global function menu f_search_menu (readonly menu ao_menu, string as)
end prototypes

global function menu f_search_menu (readonly menu ao_menu, string as);menu lm
long ll,i
ll=upperbound(ao_menu.item)
for i=1 to ll
if as=ao_menu.item[i].classname() then
return ao_menu.item[i]
end if
if upperbound(ao_menu.item[i].item)>0 then
lm=f_search_menu(ao_menu.item[i],as)
if not isnull(lm) then return lm
end if
next
setnull(lm)
return lm

end function
lzheng2001 2005-08-17
  • 打赏
  • 举报
回复
一般先定义一个Menu实例,假设m_new 是你手工建的菜单名字
试试:
m_new m_test
m_test = create m_new
w_main.ChangeMenu(m_test)
if isvalid(m_test) then
m_test.m_file.m_11.enabled=false
end if
herrick 2005-08-17
  • 打赏
  • 举报
回复
楼主,帖子发错地方了,帮你换一下
乐不 2005-08-16
  • 打赏
  • 举报
回复
我是需要设置changemenu()之后的菜单的enabled啊,再说我changemenu后对应的不同窗口要设置的菜单xiang不一定一样啊,
li_d_s 2005-08-16
  • 打赏
  • 举报
回复
在changemenu之前设置enabled属性

604

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 控件与界面
社区管理员
  • 控件与界面社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧