QT5通过按键选择打开电脑文件夹里文件

QT5 通过按键打开本地文件(适用小白)

1、功能描述
按键按下转到打开文件夹界面
2、详细步骤
新建一个名叫test项目
(1)设计UI界面
在UI界面加入一个pushbutton,例如pushbutton的名字是pushBotton_7
在这里插入图片描述
方法一:
(2)写槽函数和信号函数
1、test.h文件中的内容
#ifndef TEST_H
#define TEST_H

#include
#include “ui_test.h”

class test : public QMainWindow
{
Q_OBJECT

public:
test(QWidget *parent = 0);
~test();

private slots:
void on_pushButton_7_clicked(); //自己写的槽函数,函数名称形式是固定的 on_按键名_clicked();
//注意:按键名称一定要对应,否则检测不到按键按下的动作

private:
Ui::testClass ui;

};

#endif // TEST_H

2、test.cpp文件中代码
#include “test.h”
#include “ui_test.h”
#include
#include
test::test(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);

}

test::~test()
{

}

void test::on_pushButton_7_clicked()
{
QFileDialog::getOpenFileName(this, “open file”, “D:\study”);
//打开D盘study文件夹
}

***方法2:***不需要写槽函数,直接在test.cpp中写如下代码:
#include “test.h”
#include “ui_test.h”
#include
#include
test::test(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
//直接在这里添加:
connect(ui.pushButton_7, &QPushButton::clicked, ={
QFileDialog::getOpenFileName(this, “open file”, “D:\study”);

});
}

test::~test()
{

}

标注:本人刚尝试的时候把方法二的句子放在方法一的信号函数中,发现一个奇怪的现象:每一次点文件打开窗口会自动出现的次数+1,后来想因为两种功能相同所以放在一起会产生复合效应。

你可能感兴趣的:(Qt5,qt5,c++)