Qt Widgets——工具栏和状态栏
本文主要涉及QSizeGrip ,QStatusBar ,QToolBar
工具栏默认位于菜单栏下方,其上添加一个个action按钮,用于执行动作
绝大多谢以前都涉及过,只列出
QToolBar(const QString & title, QWidget * parent = )
QToolBar(QWidget * parent = )
~QToolBar() void addAction(QAction * action)
QAction * addAction(const QString & text)
QAction * addAction(const QIcon & icon, const QString & text)
QAction * addAction(const QString & text, const QObject * receiver, const char * member)
QAction * addAction(const QIcon & icon, const QString & text, const QObject * receiver, const char * member)
QAction * addSeparator()
QAction * addWidget(QWidget * widget)
void clear()
void setAllowedAreas(Qt::ToolBarAreas areas)//设置允许停靠区域
void setFloatable(bool floatable)//是否允许拖动成独立窗口,默认是
void setMovable(bool movable)//设置是否可移动位置,默认是
void setOrientation(Qt::Orientation orientation)//设置方向,主窗口为QMainWindow时不能使用,值有Qt::Horizontal和Qt::Vertical
QAction * insertSeparator(QAction * before)
QAction * insertWidget(QAction * before, QWidget * widget) bool isAreaAllowed(Qt::ToolBarArea area) const
bool isFloatable() const
bool isFloating() const
bool isMovable() const
Qt::Orientation orientation() const
QAction * toggleViewAction() const
Qt::ToolButtonStyle toolButtonStyle() const
QWidget * widgetForAction(QAction * action) const
QAction * actionAt(const QPoint & p) const
QAction * actionAt(int x, int y) const
Qt::ToolBarAreas allowedAreas() const
QSize iconSize() const
Public Slots
void | setIconSize(const QSize & iconSize) |
void | setToolButtonStyle(Qt::ToolButtonStyle toolButtonStyle) |
Signals
void | actionTriggered(QAction * action) |
void | allowedAreasChanged(Qt::ToolBarAreas allowedAreas) |
void | iconSizeChanged(const QSize & iconSize) |
void | movableChanged(bool movable) |
void | orientationChanged(Qt::Orientation orientation) |
void | toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle) |
void | topLevelChanged(bool topLevel)//当它的float属性改变时,信号发送, |
void | visibilityChanged(bool visible)//可见性 |
————————————————————————————————————————————————————————
状态栏,位于窗口的最下方,用于显示文本,提示用户当前的操作
QStatusBar(QWidget * parent = )
virtual ~QStatusBar()
void addPermanentWidget(QWidget * widget, int stretch = )//添加永久性部件,永久意味着它不能被临时消息(showMessage函数)掩盖,位于最右端,stretch伸缩性为0 表示给小部件最小的空间
void addWidget(QWidget * widget, int stretch = )//位于最左端,当调用showMessage函数时,消息文字将与此函数添加的部件上文字重合
QString currentMessage() const
int insertPermanentWidget(int index, QWidget * widget, int stretch = )
int insertWidget(int index, QWidget * widget, int stretch = )
bool isSizeGripEnabled() const
void removeWidget(QWidget * widget)
void setSizeGripEnabled(bool)//SizeGrip为尺寸夹具,状态栏的最右下角斜线即是,用于拖动改变窗口尺寸
void | clearMessage() |
void | showMessage(const QString & message, int timeout = 0)//在状态栏最左端显示message,timeout毫秒后文字消失 |
Signals
void | messageChanged(const QString & message) |
——————————————————————————————————————————————————————————————
尺寸夹具,用于改变窗口大小
Public Functions
QSizeGrip(QWidget * parent) | |
~QSizeGrip() |
Reimplemented Public Functions
virtual void | setVisible(bool visible) |
virtual QSize | sizeHint() const |
——————————————————————————————————————————————————————————————
示例:
pushButton右上角有QSizeGrip ,拖动它可向右上方改变整个MainWindow的大小。
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QPushButton>
#include <QLabel>
#include <QSizeGrip> MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QPushButton *btn=new QPushButton("PermanentWidget");
QLabel *lbl=new QLabel("Widget");
ui->statusBar->addPermanentWidget(btn);
ui->statusBar->addWidget(lbl); ui->statusBar->showMessage("hello",); QSizeGrip *grip =new QSizeGrip(ui->pushButton);
grip->setVisible(true);//不设置这个见不到它……
} MainWindow::~MainWindow()
{
delete ui;
}
Qt Widgets——工具栏和状态栏的更多相关文章
- Qt 学习之路 :菜单栏、工具栏和状态栏
在之前的<添加动作>一文中,我们已经了解了,Qt 将用户与界面进行交互的元素抽象为一种“动作”,使用QAction类表示.QAction可以添加到菜单上.工具栏上.期间,我们还详细介绍了一 ...
- Qt 学习之路 2(12):菜单栏、工具栏和状态栏
Home / Qt 学习之路 2 / Qt 学习之路 2(12):菜单栏.工具栏和状态栏 Qt 学习之路 2(12):菜单栏.工具栏和状态栏 豆子 2012年9月10日 Qt 学习之路 2 2 ...
- 【Qt开发】菜单栏,工具栏和状态栏
概述 菜单栏,工具栏,状态栏应用中经常见到,下图解释一目了然,实际开发中 两种方式来实现,一种是使用纯代码QMenuBar,QToolBar,QStatusBar来设计开发,另一种使用Qt Desig ...
- 三、PyQt5不同方法创建菜单栏、工具栏和状态栏
创建菜单栏.工具栏和状态栏可以直接通过代码实现,也可以通过Qt Designer中的属性编辑器等实现.通过两种方法的学习可以加深理解,更好的掌握PyQt5. 一.菜单栏与状态栏 状态栏的设置比较简单, ...
- QT5中的pro文件中为何要加入"QT += widgets"
在pro文件里写"QT+=widgets"表示引入QtWidget这个module,qmake在生成makefile的时候,会设置好include path 和 lib path, ...
- 【QT相关】Qt Widgets Module
Qt Widgets Module:提供了一些列UI元素. 使用: //头文件包含 #include <QtWidgets> //链接模式,在.pro文件中添加行: QT += widge ...
- Qt4项目迁移到Qt5问题:greaterThan(QT_MAJOR_VERSION, 4): QT += widgets .
文章来源:http://blog.csdn.net/ccf19881030/article/details/18220447 问题一:错误:C1083: 无法打开包括文件:"QApplica ...
- Qt Widgets、QML、Qt Quick的区别
Qt Widgets.QML.Qt Quick的区别 简述 看了之前关于 QML 的一些介绍,很多人难免会有一些疑惑: Q1:QML 和 Qt Quick 之间有什么区别? Q2:QtQuick 1. ...
- 【Qt官方例程学习笔记】Getting Started Programming with Qt Widgets
创建一个QApplication对象,用于管理应用程序资源,它对于任何使用了Qt Widgets的程序都必要的.对于没有使用Qt Widgets 的GUI应用,可以使用QGuiApplication代 ...
随机推荐
- select2 使用方法总结
官网:http://select2.github.io/ 调用 <link href="~/Content/select2.min.css" rel="styles ...
- error LNK2019-无法解析的外部符号 _main-该符号在函数 ___tmainCRTStartup 中被引用
问题分析: 因为Win32 console Application的入口函数是Main(),而Win32 Application的入口函数才是WinMain() 解决方案: 右键项目,打开[属性]页, ...
- win10 安装keras
1.安装Python环境 建议安装Anconda3 ,4.2.0版本 下载地址: https://repo.continuum.io/archive/index.html 或 https://mirr ...
- ArrayList的详解
数组一旦给定大小就是固定的,只能放同类型的不能再改,还有一种高级的可扩充的,就是arrayList类,被称作动态数组或者集合. 使用步骤: 1. 引用命名空间system.collections: 2 ...
- 力扣(LeetCode)58. 最后一个单词的长度
给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度. 如果不存在最后一个单词,请返回 0 . 说明:一个单词是指由字母组成,但不包含任何空格的字符串. 示例: 输入: &quo ...
- 人脸识别demo使用教程
最近在研究虹软家的arcface 人脸识别 demo,现在就给大家分享一下官方的demo**工程如何使用? **1.下载代码:git clone https://github.com/asdfqwra ...
- d3 + geojson in node
d3.js本来主要是用于用“数据驱动dom”,在浏览器端,接收后端数据,数据绑定,渲染出svg. 即使是在ng中用,也是会由框架打包,供客户端下载. 那么,如果用所谓后端渲染,发布静态的svg,那就要 ...
- mui 访问系统相册将图片显示到网页
访问系统相返回值为一个对象,通过转换为字符串可以查看,path.files[0]为返回路径去除路径赋值到src 调用摄像头返回的相片的path为一个路径通过 plus.io.resolveLocalF ...
- 记一次排查局网内的ARP包 “不存在的” MAC 地址及 “不存在的”IP 所发的ARP包
xu言: 最近生了一场病,虽然不是给自己找理由不写.不过果不其然还是没有坚持每天发一篇啊.不过,有时间我还是会把一些有意思的事情记录下来.以作备忘吧.这人老了记性就不好了.哈哈哈,当然,也侧面说明了. ...
- 记一次RAID阵列的迁移经历
xu言: 最近,某电信机房因为空调漏水问题导致了我司的Dell R430 服务器的主板及CPU不同程度受损.服务器已经不能正常开机.但是,又基于把服务器的数据需要最短时间进行恢复.抱着试试看的心里进行 ...