深入学习QWidget-1

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中调用,其他时候调用时不起作用的。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值