目录
1、利用 QToolButton 制作一个文件工具按钮。 包含,打开,另存为,保存,退出选项。
4、 视图:
1、视图组的使用分为三块: 一个是 item 项, model 模型, views 视图
例子:利用文件窗体,把获取到的文件路径显示到 listWidget 列表控件中。
一、布局控件
间隔器必须与布局一起使用
二、按钮控件
//设置工具按钮的菜单
void setMenu(QMenu *menu)
//菜单选择信号
void triggered(QAction *action)
QMenu 菜单类的使用
QAction *addAction(const QString &text) //往菜单中添加选项
1、利用 QToolButton 制作一个文件工具按钮。 包含,打开,另存为,保存,退出选项。
2、例子:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMenu>
#include <QFileSystemModel>
QFileSystemModel *model;
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
定义工具按钮的菜单
QMenu *m = new QMenu(ui->toolButton);
往菜单中添加选项
m->addAction("打开");
m->addAction("保存");
m->addAction("另存为");
m->addAction("退出");
//把选项设置到工具按钮中
// ui->toolButton->setMenu(m);
// ui->radioButton->setChecked(1);
1、创建一个模型,文件浏览系统
model = new QFileSystemModel;
2、设置模型中的item
model->setRootPath(QDir::currentPath());
3、把模型设置到列表视图中
ui->listView->setModel(model);
4、把模型设置到列表视图中
ui->listView->setModel(model);
5、把模型设置到树视图中
ui->treeView->setModel(model);
}
MainWindow::~MainWindow()
{
delete ui;
}
点击事件
void MainWindow::on_toolButton_clicked()
{
显示菜单
ui->toolButton->showMenu();
}
下拉菜单
void MainWindow::on_toolButton_triggered(QAction *arg1)
{
ui->label->setText(arg1->text());
}
//双击事件,文件树列表
//void MainWindow::on_treeView_doubleClicked(const QModelIndex &index)
//{
// QString path = model->filePath(index);
// ui->label_3->setText(path);
//}
单击事件,文件树
void MainWindow::on_treeView_clicked(const QModelIndex &index)
{
QString path = model->filePath(index);
ui->label_3->setText(path);
}
3、头文件:
#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_toolButton_clicked();
void on_toolButton_triggered(QAction *arg1);
void on_radioButton_clicked();
void on_treeView_doubleClicked(const QModelIndex &index);
void on_treeView_clicked(const QModelIndex &index);
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
4、控件
5、视图:
三、item views 项目视图组
1、视图组的使用分为三块: 一个是 item 项, model 模型, views 视图
//设置模型
void setModel( mode)
//视图中的双击信号
void doubleClicked(const QModelIndex &index)
//model 中的接口,通过索引得到内容
QString fileName(const QModelIndex &index) const
QString filePath(const QModelIndex &index) const