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. docker基本

    安装(centos): Docker 运行在 CentOS 7 上,要求系统为64位.系统内核版本为 3.10 以上.Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求 ...

  2. Ubuntu 11.04 安装后要做的20件事情

    转自:http://www.cnbeta.com/articles/141137.htm #1 不喜欢Unity? 切换到Ubuntu gnome 经典桌面 注销unity桌面环境,然后选择登录环境为 ...

  3. 如何更改Docker默认的images存储位置

    Docker的镜像以及一些数据都是在/var/lib/docker目录下,它占用的是Linux的系统分区,也就是下面的/dev/vda1,当有多个镜像时,/dev/vda1的空间可能不足,我们可以把d ...

  4. pip换国内源

    pip换国内源 1.国内常用源   阿里云 http://mirrors.aliyun.com/pypi/simple/   中国科技大学 https://pypi.mirrors.ustc.edu. ...

  5. android 中的 Handler 线程间通信

    一. 在MainActivity中为什么只是类似的写一行如下代码就可以使用handler了呢? Handler handler = new Handler() { @Override public v ...

  6. 改动文件后缀的C语言实现

    ,其他配置项保持一致.         step 3: 在"Old2New"目录下新建名为"update.bat"的批处理文件,该文件的内容为: ChangeS ...

  7. django如何修改开发服务器的端口

    我们启动django开发服务器,输入命令 manage.py  runserver  默认的端口是8000. 我们在浏览器中输入127.0.0.1:8000,可以访问8000端口 我们先停掉djang ...

  8. 在Linux下如何查CC攻击?

    什么是CC攻击?CC攻击就是利用大量代理服务器对目标计算机发起大量连接,导致目标服务器资源枯竭造成拒绝服务.那么如何判断查询CC攻击呢?本文主要介绍了一些Linux下判断CC攻击的命令. AD:201 ...

  9. IDirect3DDevice9::SetTexture的stage参数

    HRESULT IDirect3DDevice9::SetTexture(DWORD Stage, IDirect3DBaseTexture9 *pTexture) 其中Stage并不是“阶段”的意思 ...

  10. 关于Unity实现游戏录制功能的思考

    录制无非两种做法,录制操作和录制行为. 录制操作要考虑到随机行为,但其实也可以两者混合.如果随机行为过多,并且随机行为无法用种子复现,可以完全用录制的方式 最后再统一压缩 这里yy的就是录制行为的做法 ...