网站开发提供的服务,网站设置了字体为黑体怎么改字体,南京网站c建设云世家,个人网站成品下载目录
前言#xff1a;
技能#xff1a;
内容#xff1a;
一、ui中直接添加控件实现
二、 完全通过代码实现菜单
参考#xff1a; 前言#xff1a; 基于QMainWindow#xff0c;两种方式实现菜单#xff1a;通过直接添加ui控件快速添加菜单和完全通过代码实现菜单
技能
内容
一、ui中直接添加控件实现
二、 完全通过代码实现菜单
参考 前言 基于QMainWindow两种方式实现菜单通过直接添加ui控件快速添加菜单和完全通过代码实现菜单前者极为快速方便后者更能练习技能 展示效果 技能 菜单栏的三个成分QMenuBar、QMenu、QAction使用 内容
两种方式都是基于QMainWindow所以创建工程的时候需要选择基类QMainWindow
在Qt中菜单的各个部分名称如下图 上面照片来自参考链接讲的很好可以直接点参考链接去看哦 法一、ui中直接添加控件实现
如果是基于QMainWindow直接点开ui文件上面已经提供了QMenuBar 直接双击修改名称就可以
重要的是一定要回车保存才行根据上面介绍这个叫QMenu
当前QMenu回车后会出来这个样子或者单机一个QMenu也是 这里继续就可以添加QAction 但是在这里无法直接输入中文上面的QMenu是可以的
解决方法是先输入一个英文名称创造出来一个QAction点下面的信号编辑器中双击“文本”这里编辑名称就可以正常输入中文 在这里编辑功能很多比如图标和快捷方式快捷方式设置是从键盘读取按键可以组合。详细内容看参考链接
点击QAction旁边的小图标可以创建进一步的QAction方法同理 创建完界面后要实现槽函数在Qt creator中可以直接右键Action编辑器中的QAction有熟悉的“转到槽”后面的内容就和之前一样了。如果是用的VS2022联机的Qt designer或者不想用直接转到槽可以看我之前的文章-在VS2022中使用QT 法二、 完全通过代码实现菜单
首先在头文件中在Qt类中添加私有成员这里是两个QMenu两个QAction
#includeQMenu
#includeQMenuBar
#includeQAction
#includeQFileDialogprivate:QMenu *pMenuFile;QMenu *pMenuEdit;QAction *pActNew;QAction *pActOpen;
在QMainWindow的构造函数里面创建、添加合并也差不多看得懂。详情看参考链接讲得好
MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui-setupUi(this);pMenuFile new QMenu(文件(File));//快捷键ALTF 后字母表示快捷键pMenuEdit new QMenu(编辑(Edit));//快捷键ALTEui-menubar-addMenu( pMenuFile);ui-menubar-addMenu( pMenuEdit);pActNewnew QAction(新建);pActNew-setShortcut(Qt::CTRL|Qt::Key_N);pActOpennew QAction(打开);pActOpen-setShortcut(Qt::CTRL|Qt::Key_O);pMenuFile-addAction(pActNew);pMenuFile-addAction(pActOpen);//下面是手动连接槽函数的//connect(pActOpen,SIGNAL(triggered(bool)),this,SLOT(OpenClicked()));//connect(pActNew,SIGNAL(triggered(bool)),this,SLOT(NewClicked()));} 参考
【Qt学习系列】14.Qt程序菜单
【Qt学习系列】14_Qt程序菜单2
【Qt学习系列】14.Qt程序菜单3这个是实现右键菜单的欢迎大家学习