QT入门-QMainWindow类
时间:2020-07-11
本文章向大家介绍QT入门-QMainWindow类,主要包括QT入门-QMainWindow类使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
QMainWindow
1) 用到菜单栏、工具栏、浮动窗口和核心部件、状态栏:考虑QMainWindow类。
创建项目时基类选择QMainWindow。
2) label:标签。可以放文本、图片、动态图片、链接。
输入框:Line Edit只能放一行;Text Edit可以放文本图片等(富文本编辑框);Plain Edit也能放多行,但只能显示文本。
3) 菜单栏:左上角的“Type Here”
QMenuBar-QMenu-QAction 点击QAction对象会发出信号,可以连接槽函数进行处理。对UI控件进行操作,一般是在.cpp里进行。
//寻找QAction对象
ui指针对应的就是界面文件,可以通过指针获取到ui内的控件。有actionOpen, actionCut等刚才在菜单栏创建的QAction对象(这些都是对象名)。选中按F1查看其可能发出的信号,用的最多的是triggered。
eg:connect(ui->actionCut, &QAction::triggered, this, []()
{ qDebug() << "+++++++"; }
);
4) 如果想点击某个QAction打开对话框:
首先include进去<QFileDialog>。按F1查看QFileDialog,用的最多的是static public member。打开文件:getOpenFileName(一个文件)getOpenFileNames(多个文件)
connect(ui->actionCut, &QAction::triggered, this, []()
{
QString fileName = QFileDialog::getOpenFileName();
qDebug() << fileName.toUtf8().data();
});
证明返回值是打开的文件的绝对路径。
tr():将char*转为QString类型。
#include "mainwindow.h" #include "ui_mainwindow.h" #include <QDebug> #include <QFileDialog> MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); //寻找QAction对象 connect(ui->actionCut, &QAction::triggered, this, []() { qDebug() << "+++++++"; QString fileName = QFileDialog::getOpenFileName(); qDebug() << fileName.toUtf8().data(); }); } MainWindow::~MainWindow() { delete ui; }
原文地址:https://www.cnblogs.com/lipoicyclic/p/13285443.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 原创 | codeforces 1426F,初学者也能做,div3的最难题
- 安全研究 | YARA规则阻止Windows事件日志记录
- 研究人员如何使用Shhgit搜索GitHub中的敏感数据
- 使用nProbe监控移动网络(2G,3G和LTE)
- Mykings僵尸网络新变种已感染超5万台电脑
- 谁告诉你鸿蒙(HarmonyOS)不能在macOS下玩,一副没见过世面的样子!
- 连Python产生器(Generator)的原理都解释不了,还敢说Python用了5年?
- WordPress插件File-Manager任意文件上传复现
- CVE-2020-15778:OpenSSH命令注入漏洞复现
- TokyoWesterns CTF 6th 2020 部分WP
- 极客巅峰2020 部分WriteUp
- norecon:一款自动化recon工具
- Bashtop:一款功能强大的LinuxOSXFreeBSD资源监控工具
- iOS 推送手机消息背后的技术
- 手把手教你使用 cert-manager 签发免费证书