本文主要涉及QSizeGrip ,QStatusBar ,QToolBar

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

状态栏,位于窗口的最下方,用于显示文本,提示用户当前的操作

   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为尺寸夹具,状态栏的最右下角斜线即是,用于拖动改变窗口尺寸
Public Slots

void clearMessage()
void showMessage(const QString & message, int timeout = 0)//在状态栏最左端显示message,timeout毫秒后文字消失

Signals

void messageChanged(const QString & message)

——————————————————————————————————————————————————————————————

QSizeGrip

尺寸夹具,用于改变窗口大小

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——工具栏和状态栏的更多相关文章

  1. Qt 学习之路 :菜单栏、工具栏和状态栏

    在之前的<添加动作>一文中,我们已经了解了,Qt 将用户与界面进行交互的元素抽象为一种“动作”,使用QAction类表示.QAction可以添加到菜单上.工具栏上.期间,我们还详细介绍了一 ...

  2. Qt 学习之路 2(12):菜单栏、工具栏和状态栏

    Home / Qt 学习之路 2 / Qt 学习之路 2(12):菜单栏.工具栏和状态栏 Qt 学习之路 2(12):菜单栏.工具栏和状态栏  豆子  2012年9月10日  Qt 学习之路 2  2 ...

  3. 【Qt开发】菜单栏,工具栏和状态栏

    概述 菜单栏,工具栏,状态栏应用中经常见到,下图解释一目了然,实际开发中 两种方式来实现,一种是使用纯代码QMenuBar,QToolBar,QStatusBar来设计开发,另一种使用Qt Desig ...

  4. 三、PyQt5不同方法创建菜单栏、工具栏和状态栏

    创建菜单栏.工具栏和状态栏可以直接通过代码实现,也可以通过Qt Designer中的属性编辑器等实现.通过两种方法的学习可以加深理解,更好的掌握PyQt5. 一.菜单栏与状态栏 状态栏的设置比较简单, ...

  5. QT5中的pro文件中为何要加入"QT += widgets"

    在pro文件里写"QT+=widgets"表示引入QtWidget这个module,qmake在生成makefile的时候,会设置好include path 和 lib path, ...

  6. 【QT相关】Qt Widgets Module

    Qt Widgets Module:提供了一些列UI元素. 使用: //头文件包含 #include <QtWidgets> //链接模式,在.pro文件中添加行: QT += widge ...

  7. Qt4项目迁移到Qt5问题:greaterThan(QT_MAJOR_VERSION, 4): QT += widgets .

    文章来源:http://blog.csdn.net/ccf19881030/article/details/18220447 问题一:错误:C1083: 无法打开包括文件:"QApplica ...

  8. Qt Widgets、QML、Qt Quick的区别

    Qt Widgets.QML.Qt Quick的区别 简述 看了之前关于 QML 的一些介绍,很多人难免会有一些疑惑: Q1:QML 和 Qt Quick 之间有什么区别? Q2:QtQuick 1. ...

  9. 【Qt官方例程学习笔记】Getting Started Programming with Qt Widgets

    创建一个QApplication对象,用于管理应用程序资源,它对于任何使用了Qt Widgets的程序都必要的.对于没有使用Qt Widgets 的GUI应用,可以使用QGuiApplication代 ...

随机推荐

  1. Spring线程池

    •依赖 spring-context-support •配置: <bean id ="taskExecutor" class ="org.springframewo ...

  2. 使用git上传项目到github的最基础命令

    一.前言 把github作为自己项目托管的地方,实在是一个明智的选择.就算你不为自己项目考虑,你也要为你团队项目开发而学呀!可能有些初学者(比如我)会觉得git命令好多啊,又是各种术语,觉得好难上手. ...

  3. 串口.Qt532测试(异步)

    环境:Win7x64.Qt5.3.2 MSVC OpenGL(x86).vs2010(x86) 项目所在位置:E:\Project_Qt532\SeriesPort_Qt532_Z ZC:这里 同步方 ...

  4. 排序——冒泡排序(java描述)

    百度百科:冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法. 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小.首字母从A到Z)错误就把他们交 ...

  5. Discrete Log Algorithms :Baby-step giant-step

    离散对数的求解 1.暴力 2.Baby-step giant-step 3.Pollard’s ρ algorithm …… 下面搬运一下Baby-step giant-step 的做法 这是在 ht ...

  6. 记录python接口自动化测试--简单总结一下学习过程(第十目)

    至此,从excel文件中循环读取接口到把测试结果写进excel,一个简易的接口自动化测试框架就完成了.大概花了1周的时间,利用下班和周末的时间来理顺思路.编写调试代码,当然现在也还有很多不足,例如没有 ...

  7. Go语言学习之4 递归&闭包&数组切片&map&锁

    主要内容: 1. 内置函数.递归函数.闭包2. 数组与切片3. map数据结构4. package介绍 5. 排序相关 1. 内置函数.递归函数.闭包 1)内置函数 (1). close:主要用来关闭 ...

  8. TCHART FROM DATATABLE

    using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System. ...

  9. GRCh38基因组和注释文件探究

    ensembl/release91: cat Homo_sapiens.GRCh38.91.gtf | grep -v "#" | cut -f9 | cut -f1,3,6,8 ...

  10. 混合线性模型(linear mixed models)

    一般线性模型.混合线性模型.广义线性模型 广义线性模型GLM很简单,举个例子,药物的疗效和服用药物的剂量有关.这个相关性可能是多种多样的,可能是简单线性关系(发烧时吃一片药退烧0.1度,两片药退烧0. ...