//主要使用类
#include <Qstring>
#include <QMenu>
#include <QMenuBar>
#include <QToolBar>
#include <QTextEdit>
#include <QDockWidget>
#include <QStatusBar>
#include <QLabel>
#include <QDialog>
#include <QMessageBox>
#include <QFileDialog>
QMenuBar类; 在windows平台下提供MenuBar()函数配合setMenuBar()使用;在mac中要建立共享菜单则要用new QMenuBar生成菜单栏;
QDialog类;其对象有模态与非模态窗口;可用exec()(使程序停留在此),或show()区分;在动作触发时创建的对象,可用setAttribute(设置对象属性)来设置消毁时机;
QMessageBox类,QFileDialog类,对静态成员的使用;
QMessageBox类中对按键的选择判断可用switch; 
//菜单栏
this->setMinimumSize(, );
QMenuBar *myBar = menuBar();
this->setMenuBar(myBar);
QMenu *File = new QMenu(QString("文件"));
myBar->addMenu(File); File->addAction(QString("新建"),[=]{ });
File->addSeparator();
File->addAction(QString("打开"), [=]{
QFileDialog::getOpenFileName(this, QString("打开文件"), QString("./"), QString("Images (*.png *.xpm *.jpg)"));
});
QAction *Abt = myBar->addAction(QString("模态"));
QAction *Abt1 = myBar->addAction(QString("非模态")); //工具栏
QToolBar *ToBar = new QToolBar;
this->addToolBar(ToBar);
ToBar->addAction(QString("新建"),[=]{ });
ToBar->addAction(QString("打开"), [=]{ });
//工作区
QTextEdit *txt1 = new QTextEdit;
this->setCentralWidget(txt1);
//悬浮窗
QDockWidget *dock = new QDockWidget(QString("txt"));
QTextEdit *txt2 = new QTextEdit;
dock->setWidget(txt2);
this->addDockWidget(Qt::RightDockWidgetArea, dock);
//状态栏
QStatusBar *StBar = new QStatusBar;
this->setStatusBar(StBar);
QLabel *Lab1 = new QLabel(QString("状态栏:"));
QLabel *Lab2 = new QLabel(QString(""));
StBar->addWidget(Lab1);
StBar->addPermanentWidget(Lab2); //模态对话框
connect(Abt, &QAction::triggered, [=]
{
QDialog *d1 = new QDialog;
d1->show();
d1->setAttribute(Qt::WA_DeleteOnClose);
});
//非模态
connect(Abt1, &QAction::triggered, [=]
{
QDialog *d2 = new QDialog;
d2->exec();
d2->setAttribute(Qt::WA_DeleteOnClose);
}); //MessageBox
QAction *about1 = myBar->addAction(QString("关于"));
connect(about1, &QAction::triggered, [=]
{
QMessageBox::about(this, QString("关于"), QString("关于qt"));
}); QAction *about2 = myBar->addAction(QString("保存/关闭"));
connect(about2, &QAction::triggered, [=]
{
QMessageBox::StandardButton i = QMessageBox::question(this, QString("关于2"), QString("多按键"),QMessageBox::Save | QMessageBox::Close);
switch(i)
{
case QMessageBox::Save:
{
Lab2->setText(QString("保存成功"));
}
break;
case QMessageBox::Close:
{
Lab2->setText(QString("关闭"));
}
break;
default:
break;
}
});
												

Qt 5 常用类及基本函数的更多相关文章

  1. 【QT】常用类

    官方文档 doc QWidget QWidget类是所有用户界面对象的基类. 窗口部件是用户界面的一个基本单元:它从窗口系统接收鼠标.键盘和其它事件,并且在屏幕上绘制自己. 每一个窗口部件都是矩形的, ...

  2. Qt学习之路(1)------Qt常用类用法说明

    Qt常用类 向控制台输出文本 第一个例子,我们采用STL的方式: console.cpp #include <iostream> int main() { std::cout <&l ...

  3. Qt 中一些常用类中文说明

    Qt 中一些常用类中文说明是本文讲述的内容,这篇文章主要是介绍Qt 当中经常使用的类,采取的是使用字母索引的方式,下面的类是被经常使用的. QDataStream 为QIODevice提供了一串的二进 ...

  4. Qt常用类——Qstring

    Qstring有一些方面跟C/C++中的string的使用,例如把一个字符串追加到另一个字符串中,也是用“+”.也有append函数等. 下面是是Qstring的一些常用的具体函数示例: Qt的QSt ...

  5. 【学习笔记】QT常用类及应用

    一.QT基类: QObject 二.QT中常用的库 QT中的类根据功能划分在不同的库中,在用户属性.pro文件中可以看到. 三.Qt基本对话框的使用 常用5类: 通过类名可以直接调用类的静态成员函数. ...

  6. Qt的QVariant类

    QStandardItemModel类中的函数 bool setData(const QModelIndex &index, const QVariant &value, int ro ...

  7. Foundation框架下的常用类:NSNumber、NSDate、NSCalendar、NSDateFormatter、NSNull、NSKeyedArchiver

    ========================== Foundation框架下的常用类 ========================== 一.[NSNumber] [注]像int.float.c ...

  8. JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式

    相关链接: JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式 JS面向对象(2) -- this的使用,对 ...

  9. Java集合常用类特点整理

    集合的结构如下图所示: 集合的两个顶级接口分别为:Collection和Map Collection下有两个比较常用的接口分别是List(列表)和Set(集),其中List可以存储重复元素,元素是有序 ...

随机推荐

  1. 云风协程库coroutine源码分析

    前言 前段时间研读云风的coroutine库,为了加深印象,做个简单的笔记.不愧是大神,云风只用200行的C代码就实现了一个最简单的协程,代码风格精简,非常适合用来理解协程和用来提升编码能力. 协程简 ...

  2. linux下显示完整路径,linux下显示绝对路径

    linux下,命令行显示路径仅最后一个文件名,非常不方便,想显示完整路径.环境背景:linux,无root权限,可sudo(为了服务器安全,一般只给管理员root账号和密码,普通账号仅sudo权限)方 ...

  3. [转帖]CENTOS6.6下mysql5.7.11带boost和不带boost的源码安装

    CENTOS6.6下mysql5.7.11带boost和不带boost的源码安装 本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuir ...

  4. 编程竞赛--关于"数"的概念

    质数:质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数. 合数:合数是指自然数中除了能被1和本身整除外,还能被其他数(0除外)整数的数.与之相对的是质数,而1既不属于质数也不属于合 ...

  5. 设计模式:策略模式(Stratege)

    首先我们需要知道策略模式与状态模式是如此的相似,就犹如一对双胞胎一样.只不过状态模式是通过改变对象内部的状态来帮助对象控制自己的行为,而策略模式则是围绕可以互换的算法来创建成功业务的.两者都可用于解决 ...

  6. IDEA 修改JavaWeb的访问路径

    问题描述        对于我这个刚刚使用IDEA不久的新手来说,能够正常运行就不错了,不过到了后面,可能会觉得IDEA给你分配的默认访问路径很不顺手,比如访问的时候需要通过: http://loca ...

  7. CentOS7通过YUM安装NGINX稳定版本

    创建 nginx.repo 文件 $ cd /etc/repos.d/ $ vim nginx.repo #写入以下内容 [nginx-stable] name=nginx stable repo b ...

  8. Hive 教程(六)-Hive Cli

    hive 有两种启动方式,一种是 bin/hive,一种是 hiveserver2, bin/hive 是 hive 的 shell 模式,所有任务在 shell 中完成,shell 就相当于 hiv ...

  9. JS中的继承(下)

    JS中的继承(下) 在上一篇 JS中的继承(上) 我们介绍了3种比较常用的js继承方法,如果你没看过,那么建议你先看一下,因为接下来要写的内容, 是建立在此基础上的.另外本文作为我个人的读书笔记,才疏 ...

  10. 一、程序安全-SQL注入漏洞

    先新建MYDB.MDF,表MyUser: 测试页面: 一.利用报错获取信息 操作:按姓名精确查询,在输入框输入:小卫' and 1=db_name()/0 and '1'='1执行语句:select ...