1.QWidget对事件的抓取和放手。主要有例如以下几个接口

grabGesture 抓取输入手势

ungrabGesture 取消抓取手势

grabKeyboard 抓取键盘输入

grabMouse 抓取鼠标输入

releaseKeyboard 取消键盘输入

releaseMouse 取消鼠标输入

grabShortcut 抓取快捷键,须要设置setShortcutEnabled(true);

releaseShortcut 取消抓取快捷键


2.QWidget的特效

QGraphicsEffect 能够实现QWidget的特效。QT内置实现了几个经常使用的特效类,例如以下:

不仅能够用到QWidget上。还能够应用到其它的可绘制设备上,比如QPixmap等。

3.保存窗体状态
saveGeometry()和restoreGeometry()。相相应的还有QMainWindow用来保存贴边窗体等状态的接口。saveState()和restoreState()
都是用来序列化窗体状态的。

4.针对复杂的上下文菜单QInputContext
QInputContext能够针对QWidget进行定制也能够针对QApplication来进行定制。


void QApplication::setInputContext ( QInputContext * inputContext )

void QWidget::setInputContext ( QInputContext * context )

能够查看inputpanel样例。


5.窗体形状的定制,能够定制出随意形状的窗体。类似分割了的游戏登陆界面等。

void QWidget::setMask ( const QBitmap & bitmap )

void QWidget::setMask ( const QRegion & region )

能够查看QT的Shaped Clock Example样例


6.控制限制输入的暗示
void setInputMethodHints (
Qt::InputMethodHints hints );
Qt::InputMethodHints inputMethodHints ()
const;

这个接口只与输入的Widget相关,假设想要特定的限制方式。应该採用QValidator来加以控制。


7.设置窗体样式和设置QApplication的统一样式

void QWidget::setStyle ( QStyle * style )

QStyle * QWidget::style () const

8.设置窗体的样式表单,使用CSS样式表单来设置QT的窗体样式。

QString styleSheet () const
void setStyleSheet ( const QString & styleSheet )

9.将QWidget的绘制渲染到另外一个可绘制设备上。

void QWidget::render ( QPaintDevice * target, const QPoint & targetOffset =
QPoint(), const QRegion & sourceRegion = QRegion(), RenderFlags renderFlags =
RenderFlags( DrawWindowBackground | DrawChildren ) )

使用渲染标识符从源设备渲染到目标设备。


10.scroll。滚动窗体的像素坐标位置。
这里特别须要注意的是scroll()函数的调用。仅仅能在paintEvent中调用,其它时候调用时不起作用的。






深入学习QWidget-1的更多相关文章

  1. GUI学习之四——QWidget控件学习总结

    上一章将的QObject是PyQt里所有控件的基类,并不属于可视化的控件.这一章所讲的QWidget,是所有可视化控件的基类. QWidget包含下面几点特性 a.控件是用户界面的最小的元素 b.每个 ...

  2. PyQt(Python+Qt)学习随笔:利用QWidget部件的palette以及ColorGroup、colorRole局部调整部件的特定范围颜色

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 在<PyQt(Python+Qt)学习随笔:QWidget部件的 ...

  3. PyQt学习随笔:QWidget的QFont的kerning、Antialiasing属性用途

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 引言 在Designer中,QWidget的font属性有两个比较陌生 ...

  4. PyQt(Python+Qt)学习随笔:QWidget部件的palette属性以及ColorGroup、colorRole的用途和含义

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 1.palette属性 QWidget部件的palette属性用于控制 ...

  5. 第15.10节 PyQt(Python+Qt)入门学习:Qt Designer可视化设计界面组件与QWidget类相关的组件属性详解

    PyQt学习有阵子了,对章节的骨架基本考虑好了,准备本节就写组件的属性的,结果一是日常工作繁忙,经常晚上还要加班,二是Qt的组件属性很多,只能逐一学习.研究和整理,花的时间有点长,不过终于将可视化设计 ...

  6. QWidget属性,函数的学习

    我把所有属性重新按功能排了一遍,这样才能灌到自己脑子里,并且方便自己以后查找: -------------------- 颜色/渲染方式 -----------------------QWidget: ...

  7. PyQt4入门学习笔记(三)

    # PyQt4入门学习笔记(三) PyQt4内的布局 布局方式是我们控制我们的GUI页面内各个控件的排放位置的.我们可以通过两种基本方式来控制: 1.绝对位置 2.layout类 绝对位置 这种方式要 ...

  8. PyQt4入门学习笔记(一)

    PyQt4入门学习笔记(一) 一直没有找到什么好的pyqt4的教程,偶然在google上搜到一篇不错的入门文档,翻译过来,留以后再复习. 原始链接如下: http://zetcode.com/gui/ ...

  9. 【Qt学习笔记】窗口部件整理

    关于Qt中窗口部件的学习 今天开始学习Qt的窗口部件,领略一下Qt的神奇之处,记得2012年的那年冬天,我还学Java呢,现在基本上和Java说再见了,不过对于嵌入式的开发Qt还是举足轻重的,我想趁着 ...

  10. OpenGL学习笔记5——嵌入Qt框架

    学习OpenGL也有段时间了,前几篇将GL最基本的画图过程解析了一下,后面进阶的就随项目需要再学.因为之前一直是用glut这个实用工具包来开发很方便,但是会附带一个控制台的窗口,实在觉得有些low,因 ...

随机推荐

  1. HDU4920 Matrix multiplication 矩阵

    不要问窝 为什么过了> < 窝也不造为什么就过了 说是%3变成稀疏矩阵 可是随便YY个案例都会超时.. . 看来数据是随机的诶 #include <stdio.h> #incl ...

  2. <c:forEach items="${revertList}" varStatus="reverts" var="revert" > <dl >

    <c:forEach>标签用于通用数据循环,它有以下属性 属 性 描 述 是否必须 缺省值 items 进行循环的项目 否 无 begin 开始条件 否 0 end 结束条件 否 集合中的 ...

  3. Codeforces Round #177 (Div. 2) 题解

    [前言]咦?如今怎么流行打CF了?于是当一帮大爷在执着的打div 1的时候,我偷偷的在刷div 2.至于怎么决定场次嘛.一般我报一个数字A,随便再拉一个人选一个数字B.然后開始做第A^B场.假设认为机 ...

  4. Lr_debug_message,Lr_output_message,Lr_error_message,Lrd_stmt,Lrd_fetch

    今天在群里,问了 Lr_debug_message,Lr_output_message,Lr_error_message,Lrd_stmt,Lrd_fetch.下 面我整理了下Lr_debug_mes ...

  5. Failure to transfer org.apache.maven.plugins:maven-resources-plugin:pom:2.7

    导入maven项目时,pom.xml文件报错如下: Failure to transfer org.apache.maven.plugins:maven-resources-plugin:pom:2. ...

  6. Spring+Hibernate整合

    因为整合spring和hibernate所以,需要用到spring里面复写Hibernate的类以有DI和IOC特性 db.sql hibernate_basic数据库 表 person 字段 pid ...

  7. VSCode开发工具下载

    VSCode集成多语言和插件,方便开发和代码管理. 请到此处下载:https://code.visualstudio.com/Download

  8. int.TryParse非预期执行引发的思考

    问题出现 这天在写一个页面,想谨慎些就用了int.TryParse,结果出问题了. 代码如下: int id = 1000; //Request.QueryString["id"] ...

  9. EMQ学习笔记---Clean Session和Retained Message

    MQTT会话(Clean Session)MQTT客户端向服务器发起CONNECT请求时,可以通过’Clean Session’标志设置会话.‘Clean Session’设置为0,表示创建一个持久会 ...

  10. 关于cnblogs的排版

    cnblogs默认的样式实在让我无法接受.今天去看了看div+css的基本知识. 决定这周抄一个别人的排版,稍微改改. 不然,就这样式,实在没心情写博客. 写博客,这次准备要大干一场了.