• 3892阅读
  • 8回复

[提问]Qt菜单设置问题 [复制链接]

上一主题 下一主题
离线nyxucong
 

只看楼主 倒序阅读 楼主  发表于: 2013-03-05
关键词: 问题菜单
现在我在菜单添加十个项,如下:
UserMenu = menuBar()->addMenu(tr("&User"));    
UserMenu->addAction(user01Action);    
UserMenu->addAction(user02Action);  
UserMenu->addAction(user03Action);  
UserMenu->addAction(user04Action);  
UserMenu->addAction(user05Action);  
UserMenu->addAction(user06Action);  
UserMenu->addAction(user07Action);  
UserMenu->addAction(user08Action);  
UserMenu->addAction(user09Action);  
UserMenu->addAction(user10Action);
现在我想用setEnabled来控制这十个项中某些可以点,某些不可以点。每一个Action都由一个bool值来确定它是否可用。请问该怎么写?谢谢!
离线uidab

只看该作者 1楼 发表于: 2013-03-05
回 楼主(nyxucong) 的帖子
QActionGroup 如果是都互斥的话,查查这个。

有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线nyxucong

只看该作者 2楼 发表于: 2013-03-05
回 1楼(uidab) 的帖子
谢谢你给的建议。我主要是想写一个for循环来控制这十个,但是不知道怎么把这个i=1转换成user01Action?这个int型的i用什么函数能转换成user Action的?
离线nyxucong

只看该作者 3楼 发表于: 2013-03-07
求哪位大神帮帮忙,谢谢了!
离线kimtaikee

只看该作者 4楼 发表于: 2013-03-07
用宏自己去实现

离线pxiao_xiao

只看该作者 5楼 发表于: 2013-03-07
用枚举
离线xiaoniede

只看该作者 6楼 发表于: 2013-03-07
很简单,通过:QMenu中的“actions () const : QList<QAction *> 获得指向菜单的指针list然后通过for循环实现你想要的效果。
离线shiziyang

只看该作者 7楼 发表于: 2013-03-08
你建一个QAction * 的数组把这10个QAction都扔里面不久行了?
离线nyxucong

只看该作者 8楼 发表于: 2013-03-11
谢谢各位大神的回答。问题解决了
快速回复
限100 字节
 
上一个 下一个