Qt工具栏中添加按钮QAction
过程大概分为6个步骤。
1 新建Action
在界面编辑的底部,新建所需要的Action。
2 编辑Action信息
编辑好Action的对象名称和显示文本以及提示信息等。若是按钮需要图标(Icon),可以添加一个图片资源文件,再选择图片资源。
新建编辑完成后如下:
3 界面添加QToolBar
在界面右击鼠标,选择添加工具栏:
4 拖拽Action到QToolBar的位置
将Action拖拽到工具栏位置:
5 调整QToolBar的位置
设置好工具栏的长宽,以及Action的文本和Icon等性质:
6 为Action添加槽函数
然后实现槽函数就完成了。
程序代码如下:
cpp
// .h文件
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_actionNew_triggered();
void on_actionCopy_triggered();
void on_actionPaste_triggered();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
// .cpp
#include "MainWindow.h"
#include "ui_MainWindow.h"
#include <QDebug>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_actionNew_triggered()
{
ui->label->setText(QString("New"));
}
void MainWindow::on_actionCopy_triggered()
{
ui->label->setText(QString("Copy"));
}
void MainWindow::on_actionPaste_triggered()
{
ui->label->setText(QString("Paste"));
}
程序效果如下: