目录
一、概述
QPushButton也是Qt GUI中最常用的控件之一,我们通常用来实现以下功能:
- 普通按钮
- 菜单按钮
实现效果如下:
![](https://img-blog.csdnimg.cn/405017c6c9e04470a7d1c31ab81041ce.gif)
二、QPushButton用法
1.普通按钮
//普通按钮
//创建按钮,给按钮添加图标,关联按钮点击信号和槽函数
QPushButton *pbt = new QPushButton(widget);
pbt->setFixedWidth(100);
pbt->setText("普通按钮");
pbt->setIcon(QIcon(":/img/Configlogo1.jpg"));
connect(pbt,SIGNAL(clicked(bool)),this,SLOT(pbtClickedSlots()));
实现按钮功能的一般流程是:创建按钮,创建槽函数,关联按钮的点击信号和槽函数。
2.菜单按钮
//菜单按钮
//1.创建按钮,给按钮添加图标
QPushButton *pbt_menu = new QPushButton(widget);
pbt_menu->setFixedWidth(100);
pbt_menu->setText("菜单按钮");
pbt_menu->setIcon(QIcon(":/img/info.png"));
m_label_pbtmenu = new QLabel(widget);
m_label_pbtmenu->setAlignment(Qt::AlignLeft);
m_label_pbtmenu->setText("菜单");
//2.创建菜单
QMenu *menu = new QMenu();
//3.创建action
QAction *act1 = new QAction();
QAction *act2 = new QAction();
QAction *act3 = new QAction();
//4.重命名action
act1->setText("系统设置");
act2->setText("显示设置");
act3->setText("算法设置");
//5.给action添加图标
act1->setIcon(QIcon(":/img/Configlogo1.jpg"));
act2->setIcon(QIcon(":/img/QQ.png"));
act3->setIcon(QIcon(":/img/Importlogo2.jpg"));
//6.将action加入菜单中
menu->addAction(act1);
menu->addAction(act2);
menu->addAction(act3);
//7.将对象menu设置成pbt_menu的菜单
pbt_menu->setMenu(menu);
//8.每个action的触发信号关联相对应的槽函数
connect(act1,SIGNAL(triggered(bool)),this,SLOT(menuAct1ClickedSlots()));
connect(act2,SIGNAL(triggered(bool)),this,SLOT(menuAct2ClickedSlots()));
connect(act3,SIGNAL(triggered(bool)),this,SLOT(menuAct3ClickedSlots()));
实现按钮功能的一般流程是:创建按钮,创建菜单,创建action,将action添加到菜单,将菜单添加到按钮。
三、工程源码
工程文件下载:
链接:https://pan.baidu.com/s/1_GdLmnkKrVX1MB7eKnrQ9A
提取码:o3c5
链接失效请评论提醒,内容如有错误也请指正,不胜感激。