收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
添加到项目中;
在imgs.qrc中,点击“Add Prefix”添加前缀,修改前缀名称后,点击“Add Files”添加图像;
图像资源成功导入;
程序实现
首先在头文件中声明QMenu(菜单栏)、QToolBar(工具栏)、QAction(动作)
QMenu *fileMenu;//声明菜单栏
QMenu *operaMenu;//声明菜单栏
QToolBar *fileTool;//声明工具栏
QAction *readAct;//声明读文件菜单
QAction *writeAct;//声明写文件菜单
QAction *updateAct;//声明更新文件菜单
QAction *exitAct;//声明推出程序菜单
首先创建动作,并使用connect() 绑定动作执行内容
void MainWindow::CreateActions()//实例化下拉菜单功能
{
const QIcon readActIcon =QIcon(“:/imgs/read.png”);
readAct = new QAction(readActIcon, QStringLiteral(“读取文件(&O)”),this);//实例化readAct
readAct->setStatusTip(QStringLiteral(“读取文件”));//设置鼠标停留显示内容
readAct->setShortcuts(QKeySequence::Open);//打开快捷键
connect(readAct, &QAction::triggered, this, &MainWindow::ReadFile);//绑定动作执行内容
const QIcon writeActIcon =QIcon(“:/imgs/write.png”);
writeAct = new QAction(writeActIcon, QStringLiteral(“写入文件(&N)”), this);
writeAct->setStatusTip(QStringLiteral(“写入文件”));
writeAct->setShortcuts(QKeySequence::New);//创建快捷键
connect(writeAct, &QAction::triggered, this, &MainWindow::WriteFile);
const QIcon updateActIcon =QIcon(“:/imgs/update.png”);
updateAct = new QAction(updateActIcon, QStringLiteral(“更新文件(&U)”), this);
updateAct->setStatusTip(QStringLiteral(“更新文件”));
connect(updateAct, &QAction::triggered, this, &MainWindow::UpdateFile);
const QIcon exitActIcon =QIcon(“:/imgs/exit.png”);
exitAct = new QAction(exitActIcon, QStringLiteral(“退出系统(&E)”), this);
exitAct->setStatusTip(QStringLiteral(“退出系统”));
exitAct->setShortcuts(QKeySequence::Close);//退出系统快捷键
connect(exitAct, &QAction::triggered, this, &MainWindow::ExitProgram);
}
创建菜单栏,并加入动作:
void MainWindow::CreatMenuBar()
{
fileMenu = menuBar()->addMenu(QStringLiteral(“文件”).trimmed()+tr(“(&F)”));//实例化一个菜单栏
operaMenu = menuBar()->addMenu(QStringLiteral(“操作”).trimmed()+tr(“(&A)”));//实例化一个菜单栏
fileMenu->addAction(readAct);//添加动作
fileMenu->addAction(writeAct);
fileMenu->addAction(updateAct);
fileMenu->addSeparator();
fileMenu->addAction(exitAct);
}
创建工具栏,并加入动作:
void MainWindow::CreateToolbar()//实例化工具栏
{
fileTool = addToolBar(QStringLiteral(“文件”));
fileTool->addAction(readAct);//添加动作
fileTool->addAction(writeAct);
fileTool->addAction(updateAct);
fileMenu->addSeparator();
fileMenu->addAction(exitAct);
}
实现读取文件函数,此处为读取文件实际操作,使用QSettings辅助读取ini文件:
void MainWindow::ReadFile()
{
QSettings *settings = new QSettings(“./file.ini”,QSettings::IniFormat);//调用QSettings操作ini文件
QString lang = settings->value(“content”,“”).toString();//读出ini文件中保存的内容,默认为空
ui->textEdit->setText(lang);//将读出的内容显示到窗口中
delete settings;
QMessageBox::information(this,QStringLiteral(“提示”), QStringLiteral(“读取成功!”));
}
实现写入文件函数,此处为写入文件实际操作,同样使用QSettings;
更新文件和写入文件道理一样,这跟ini文件特性有关,直接对指定key赋值即为更新;
//写入文件内容
void MainWindow::WriteFile()
{
QSettings *settings = new QSettings(“./file.ini”,QSettings::IniFormat);
settings->setValue(“content”,“hello, this is a file!”);//将内容写入ini文件中
delete settings;
QMessageBox::information(this,QStringLiteral(“提示”), QStringLiteral(“写入成功!”));
}
//更新文件内容
void MainWindow::UpdateFile()
{
QSettings *settings = new QSettings(“./file.ini”,QSettings::IniFormat);
settings->setValue(“content”,ui->textEdit->toPlainText());//将当前选择的语言写入ini文件中
delete settings;
QMessageBox::information(this,QStringLiteral(“提示”), QStringLiteral(“更新成功!”));
}
实现退出系统函数,增加退出确认功能;如下:
void MainWindow::ExitProgram()
{
QMessageBox::StandardButton btn;
btn = QMessageBox::question(this, QStringLiteral(“提示”), QStringLiteral(“是否退出系统?”), QMessageBox::Yes|QMessageBox::No);//添加是和否选择按钮
if (btn == QMessageBox::Yes) {//如果选择是
this->close();//退出系统
}
}
最后,只需要在MainWindow构造函数中调用以上实现的方法即可:
由于创建菜单栏和工具栏的时候就把动作加进去,所以这里需要先创建动作Action
-
MainWindow::MainWindow(QWidget *parent)
- QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
//由于创建菜单栏和工具栏的时候就把动作加进去,所以这里需要先创建动作Action
CreateActions();//创建动作Action
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
mg-RcpGslSD-1715790462867)]
[外链图片转存中…(img-p2fAE8Nx-1715790462867)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)