用void menuvb定义void函数菜单函数,怎么办

您的访问出错了(404错误)
很抱歉,您要访问的页面不存在。
1、请检查您输入的地址是否正确。
进行查找。
3、感谢您使用本站,3秒后自动跳转至网站首页QT右键菜单、右键下拉菜单、各控件响应右键菜单方法简介
我的图书馆
QT右键菜单、右键下拉菜单、各控件响应右键菜单方法简介
&QT右键菜单、右键下拉菜单、各控件响应右键菜单方法简介(持续添加更新中......
主窗体右键弹出下拉菜单方法(我的主窗体的类名是):
其中和是两个对象指针。我的定义和初始化如下:
油槽函数是用来响应右键菜单的点击动作。
内置控件添加右键菜单方法(以添加右键菜单为例):
connect(moduleTree,SIGNAL(itemPressed(QTreeWidgetItem *, int)),this,SLOT(SlotItemClicked(
QTreeWidgetItem *, int)));
实现槽函数
void CGuiMainwindow::SlotItemClicked(QTreeWidgetItem *item, int column)
&&&& if (qApp-&mouseButtons() == Qt::LeftButton)
&&&& { return; }
&&&& if (qApp-&mouseButtons() == Qt::RightButton)
&&&& { if (item-&childCount() & 0) { return; }
&&&& && ShowMenu();
实现菜单显示功能函数:
void CGuiMainwindow::ShowMenu()
&&&& QPoint pos;
&&&& QMenu menu(moduleTree);
&&&& QIcon myIcon("Resources/logo.png");
&&&& menu.addAction(myIcon,tr("菜单_1"));
&&&& menu.addAction(myIcon,tr("菜单_2"));
&&&& menu.addAction(myIcon,tr("菜单_3"));
&&&& menu.addAction(myIcon,tr("菜单_4"));
&&&& menu.addAction(myIcon,tr("菜单_5"));
&&&& menu.addAction(myIcon,tr("菜单_6"));
&&&& menu.exec(QCursor::pos());
TA的最新馆藏
喜欢该文的人也喜欢Android的onCreateOptionsMenu()创建菜单Menu详解_Linux编程_Linux公社-Linux系统门户网站
你好,游客
Android的onCreateOptionsMenu()创建菜单Menu详解
来源:Linux社区&
作者:guoquanyou
一共有三种形式的菜单:&&&&&&&&&&& 1.选项菜单(optinosMenu)&&&&&&&&&&& 2.上下文菜单(ContextMenu)&&&&&&&&&&& 3.子菜单(subMenu)其中最常用的就是选项菜单(optionsMenu), 该菜单在点击 menu 按键 后会在对应的Activity底部显示出来。1.Activity菜单机制 (与dialog类似)Activity有一套机制来实现对菜单的管理,方法如下:   1.public boolean onCreateOptionsMenu(Menu menu)&&&&&&&&&&&& 此方法用于初始化菜单,其中menu参数就是即将要显示的Menu实例。&&&&&&&&&&&&& 返回true则显示该menu,false 则不显示;&&&&&&&&&&&&& (只会在第一次初始化菜单时调用)&&&&&&&&&& 2.public boolean onPrepareOptionsMenu(Menu menu)&&&&&&&&&&&& 在onCreateOptionsMenu执行后,菜单被显示前调用;如果菜单已经被创建,则在菜单显示前被调用。&&&&&&&&&&&&& 同样的, 返回true则显示该menu,false 则不显示;&&&&&&&&&&&& (可以通过此方法动态的改变菜单的状态,比如加载不同的菜单等)&&&&&&&&&& 3.public void onOptionsMenuClosed(Menu menu)&&&&&&&&&&&&& 每次菜单被关闭时调用.&&&&&&&&&&&&& (菜单被关闭有三种情形,menu按钮被再次点击、back按钮被点击或者用户选择了某一个菜单项)&&&&&&&&&&&&& &&&&&&&&&&& 4.public boolean onOptionsItemSelected(MenuItem item)&&&&&&&&&&&&&& 菜单项被点击时调用,也就是菜单项的监听方法。&&&&&&&&&&&&& &&&&&&&&& 通过这几个方法,可以得知,对于Activity,同一时间只能显示和监听一个Menu 对象。& 2. 添加菜单:&&&&& 可以在onCreateOptionsMenu或者onPrepareOptionsMenu方法中来添加菜单&&&&& 2.1代码添加:&&&&&&& menu.add((int groupId, int itemId, int order, charsequence title) .setIcon(drawable ID)
&&&&&& add()方法的四个参数,依次是:&
&&&&& 1、组别,如果不分组的话就写Menu.NONE,&
&&&&& 2、Id,这个很重要,Android根据这个Id来确定不同的菜单&
&&&&& 3、顺序,哪个菜单项在前面由这个参数的大小决定&
&&&&& 4、文本,菜单项的显示文本&&&&&& add()方法返回的是MenuItem对象,调用其setIcon()方法,为相应MenuItem设置Icon&&&& 示例:&&& public boolean onCreateOptionsMenu(Menu menu) {&&& &&& super.onCreateOptionsMenu(menu);&&& &&& menu.add(Menu.NONE, Menu.First+1, 0, "设置").setIcon(R.drawable.setting);&&& &&&&&& }&&&&& &&&&& 2.2布局文件添加:&&&&&&&& &&&&&& getMenuInflater().inflate(R.menu.options_menu, menu);&&&&& 调用Activity的getMenuInflater()得到一个MenuInflater, &&&&&& 使用inflate方法来把布局文件中的定义的菜单 加载给 第二个参数所对应的menu对象&&&&&& 示例:&&&& @Override&&& public boolean onCreateOptionsMenu(Menu menu) {&&& &&& super.onCreateOptionsMenu(menu);&&& &&& getMenuInflater().inflate(R.menu.options_menu, menu);&&& &&&&&& }&&& 布局文件:&&&&& 在res目录下建立一个menu文件夹,并创建布局文件: options_menu.xml &&& &?xml version="1.0" encoding="utf-8"?&&&& &menu xmlns:android="/apk/res/android"&&&& &item android:id="@+id/menu_setting" android:title="设置" android:icon="@drawable/setting"&&/item&&&& &/menu&&& 3.菜单项监听:&&& 只要菜单中的菜单项被点击,都会触发onOptionsItemSelected(MenuItem item)&&& item参数即为被点击的菜单项,那么需要在此方法内判断哪个Item被点击了,从而实现不同的操作。&&& 对于两种不同的添加菜单方法,判断的方法有一点区别,但本质是一样的。&&& 3.1代码添加菜单的判断方法&&&& @Override&&& public boolean onOptionsItemSelected(MenuItem item) {&&& &&& super.onOptionsItemSelected(item);&&& &&& switch(item.getItemId())//得到被点击的item的itemId&&& &&& {&&& &&& case Menu.First+1: //对应的ID就是在add方法中所设定的Id&&& &&& &&&&&& &&& case Menu.First+2:&&& &&& &&&&&& &&& }&&& &&&&&& }& 3.2布局文件添加菜单的判断方法:&&& @Override&&& public boolean onOptionsItemSelected(MenuItem item) {&&& &&& super.onOptionsItemSelected(item);&&& &&& switch(item.getItemId())//得到被点击的item的itemId&&& &&& {&&& &&& case R.id.menu_setting://这里的Id就是布局文件中定义的Id,在用R.id.XXX的方法获取出来&&& &&& &&&&&& &&& case R.id.menu_info:&&& &&& &&&&&& &&& }&&& &&&&&& }
相关资讯 & & &
& (11/28/:18)
& (10/10/:25)
& (05月21日)
& (03/08/:13)
& (07/10/:11)
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款
匿名 发表于 不错!
(0) 匿名 发表于 明白了, 受教育了C语言菜单怎么弄_百度知道
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
C语言菜单怎么弄
?比如说我的这个C语言程序有1,输入 2计算总分,计算平均分3排序4统计个个分段的百分比这样四个功能。在每个小程序执行完之后,又可以返回到主菜单。。。这样一个菜单怎样编写
我有更好的答案
return 0.h&/
}while(,为1时退出
InitMenu( Menu );
&#47,处理结束后回到主菜单。当在主菜单上选择退出功能后,软件运行结束、功能键,用户选择某一菜单项后进入相应子模块处理具体问题; 选择退出}// 初学者可以使用printf、getch函数实现基本交互/&#47,MaxItem=10; //
…}/// 每轮循环都重新显示界面; 进阶后可以引入图形、字体:现在,通过一个简单的开发实例来理解上述概念、选择功能划分成子函数,最终设计出来的函数代码框架如下:#include &指针数组存储菜单名称:0-9项
intdone=0;
&#47。该应用软件运行时,首先出现一个菜单中国电力出版社书号为的C语言程序设计书上有介绍方法, MaxItem ) )
sub1()、接受用户选择、根据用户选择执行相应分支
switch( ChooseMenu(M
case 2, int MaxItem ){
return 1;/退出标志、鼠标等元素进行人机交互int ChooseMenu( char *Menu[];模块一void sub1(void){
…}void main( void ){
char *Menu[10];stdio、接受用户选择函数//
/菜单初始化函数:设置菜单文字void InitMenu( char *Menu[] ){
Menu[0]=&1. 菜单项1名称 &。将各子模块划分成子函数后,进一步将菜单初始化和界面显示; 显示菜单;/调用菜单初始化模块
&#47!done):
这个的作者是谁??
李新华、梁栋
case &;总分函数;3&;;输入函数scanf(&x,%d&);switch(x);{
case &1"
case "
case &2"
case &平均分函数;统计各个分段百分比函数;4&;break();5&
概要:在linux编程的话,直接使用printf语句就可以实现了,注意换行、间距、对齐就能做个比较简单的菜单。在windows下的DOS工具:Turbo c 2.0也可以实现C语言的编译和运行,程序的写法同linux下相同。具体的C语言写法,还是需要你自己来,除非有现成的代码,不然一般没有时间来编写。
void display_menu(){
printf(&1. 输入\n&);
//包括你所有的menu 自行编写}void get_cmd_and_run(){
display_menu();//显示菜单
scanf(&%d&, &cmd);//获取输入命令
switch(cmd)
//根据cmd值执行对应操作 一般包括退出程序
//执行后会自动进行下一循环 读取下一个命令
}}基本是是这样的
其他1条回答
为您推荐:
其他类似问题
c语言的相关知识
换一换
回答问题,赢新手礼包}

我要回帖

更多关于 自定义menu菜单 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信