我这样做是为了我的WACOM Intoos艺术平板电脑:

只需继承一个QWidget类并定义tabletEvent()方法来处理接收到的QTabletEvent事件。在

别忘了打电话给平板电脑tabletEvent.accept()方法位于处理程序末尾。在

示例:

(处理TabletPress、tabletreease和TabletMove事件)

当笔接触平板电脑表面时,生成TabletPress事件,当笔离开平板电脑表面时生成TabletRelease事件。

在这些事件之间生成一个TabletMove事件流。在

对于每个接收到的QTabletEvent,您将得到笔的位置和笔的压力。(我的平板电脑上没有倾斜信息)

请注意,我不得不将示例窗口调整为完全桌面大小,以便从整个平板电脑表面获取表事件。我不知道如何从平板电脑的所有表面捕捉事件,将其映射到widget客户端表面,如果它没有调整到完全的桌面大小。(对此问题的任何帮助都将得到极大的重视。)import sys

from PyQt5.QtCore import *

from PyQt5.QtGui import *

from PyQt5.QtWidgets import *

class TabletSampleWindow(QWidget):

def __init__(self, parent=None):

super(TabletSampleWindow, self).__init__(parent)

self.pen_is_down = False

self.pen_x = 0

self.pen_y = 0

self.pen_pressure = 0

self.text = ""

# Resizing the sample window to full desktop size:

frame_rect = app.desktop().frameGeometry()

width, height = frame_rect.width(), frame_rect.height()

self.resize(width, height)

self.move(-9, 0)

self.setWindowTitle("Sample Tablet Event Handling")

def tabletEvent(self, tabletEvent):

self.pen_x = tabletEvent.globalX()

self.pen_y = tabletEvent.globalY()

self.pen_pressure = int(tabletEvent.pressure() * 100)

if tabletEvent.type() == QTabletEvent.TabletPress:

self.pen_is_down = True

self.text = "TabletPress event"

elif tabletEvent.type() == QTabletEvent.TabletMove:

self.pen_is_down = True

self.text = "TabletMove event"

elif tabletEvent.type() == QTabletEvent.TabletRelease:

self.pen_is_down = False

self.text = "TabletRelease event"

self.text += " at x={0}, y={1}, pressure={2}%,".format(self.pen_x, self.pen_y, self.pen_pressure)

if self.pen_is_down:

self.text += " Pen is down."

else:

self.text += " Pen is up."

tabletEvent.accept()

self.update()

def paintEvent(self, event):

text = self.text

i = text.find("\n\n")

if i >= 0:

text = text.left(i)

painter = QPainter(self)

painter.setRenderHint(QPainter.TextAntialiasing)

painter.drawText(self.rect(), Qt.AlignTop | Qt.AlignLeft , text)

app = QApplication(sys.argv)

mainform = TabletSampleWindow()

mainform.show()

app.exec_()

平板python_Wacom平板电脑的Python示例相关推荐

  1. python用os模块自动打开软件_Python实现自动打开电脑应用的示例代码

    由于时间原因,有时候可能会错过某个上网课的时间段.因此想要实现自动定时启动DingDing. 新手一枚,如有不当勿喷望大佬指正. 自动打开DingDing可以由两种方法实现: 通过找出找出软件在电脑中 ...

  2. android平板电脑怎么才能连接电脑,平板连接电脑没反应怎么办 平板怎样连接电脑...

    平板电脑是最近非常流行的一款电子设备,它拥有比手机更大的屏幕,带给用户更为出色的看视频与游戏体验,而且轻薄便携,是许多人出门在外必带的设备,有许多人在上使用平板电脑的过程中会与电脑相连接,把平板里的文 ...

  3. python人机猜拳游戏代码_python 实现人和电脑猜拳的示例代码

    完成人机猜拳互动游戏的开发,用户通过控制台输入实现出拳,电脑通过程序中的随机数实现出拳,每一局结束后都要输出结果.当用户输入n时停止游戏,并输出总结果. import random all = ['石 ...

  4. 计算机系统之间数据互连方式,平板如何连接电脑实现数据传输?平板连接电脑的图文方法...

    我们使用台式电脑办公,当想要把制作的文档传输到平板电脑里面,这样携带就非常方便了,特别对于经常出差的朋友来说,特别合适,那么平板如何连接电脑实现数据传输呢?下面,就随小编看看具体操作方法. 很多朋友想 ...

  5. android gpu平板 推荐,性能强的不像话,最强安卓平板华为平板M6上手

    原标题:性能强的不像话,最强安卓平板华为平板M6上手 你为什么买平板电脑?当这一问题问出以后,许多朋友的表情都很微妙,随后大概率的回答则相当统一:"我买平板干嘛?".其实得到这样一 ...

  6. 人机猜拳代码python_python 实现人和电脑猜拳的示例代码

    完成人机猜拳互动游戏的开发,用户通过控制台输入实现出拳,电脑通过程序中的随机数实现出拳,每一局结束后都要输出结果.当用户输入n时停止游戏,并输出总结果. import random all = ['石 ...

  7. 23种设计模式介绍(Python示例讲解)

    文章目录 一.概述 二.设计模式七种原则 三.设计模式示例讲解 1)创建型模式 1.工厂模式(Factory Method) [1]简单工厂模式(不属于GOF设计模式之一) [2]工厂方法模式 2.抽 ...

  8. python软件代码示例-python 示例代码1

    第一章 python基础一 ​在此不再赘述为什么学习python这门编程,网上搜索一箩筐.我在此仅说一句python的好,用了你就会爱上它. 本python示例代码1000+带你由浅入深的了解pyth ...

  9. 苹果电脑安装python-mac电脑安装python

    mac电脑安装python 1 版本选择 mac电脑已经自带了python环境,版本是2.7, 卸载它既费力,也无必要,甚至会引来一些麻烦,最好的办法是让python3.6与python2.7 共存 ...

最新文章

  1. CodeGen结构循环回路
  2. NGINX、PHP-FPM开机自动启动
  3. Java判断语句 循环语句
  4. javascript 鼠标事件总结
  5. Google Dremel 原理 - 如何能3秒分析1PB
  6. 两个计算机系统安装,如何在一台电脑上同时重装两个系统|戴尔电脑怎么安装两个系统...
  7. 电子签名 和 电子证书
  8. python中的文件怎么处理_python 中有关文件处理
  9. bzoj1854 [Scoi2010]游戏
  10. mysql动态函数库_mysql自定义函数与动态查询
  11. 【转】后端取得当前PAGE的方法
  12. kindeditor 编辑器手机访问默认为HTML编辑
  13. 企业选择WMS仓库管理系统免费版是否更好
  14. 使用HTML制作静态宠物网站——蓝色版爱宠之家(HTML+CSS)
  15. [BZOJ5332] [SDOI2018] 旧试题 [BZOJ5276] Skyfall [莫比乌斯反演][三元环计数][std::vector][Cache Miss]
  16. ADAUDSP1452 声场 Balance与Fader功能的实现
  17. 计算机怎么打印订单,微信小商店怎么打印订单小票、标签、发货单、电子面单?...
  18. Halcon 缺陷检测 PCB板检查(灰度开闭运算)
  19. 【Python开发】ComicDownloader(漫画批量下载)
  20. HTML5期末大作业:汽车销售网站模板设计(7个页面) HTML+CSS+JavaScript 企业网页设计源码

热门文章

  1. c语言:找出1到4000中,数字的各位数之和能被4整除的数有多少个?
  2. 学习CAS实现SSO单点登录
  3. 为什么世界上一些最好的科学家和程序员,在世人眼里,都有点不太正常,甚至行为混乱...
  4. 理解Hinted Handoff
  5. eclipse 全局替换
  6. 【C++/C】【学习笔记】二分算法——处理“最小却最大”问题
  7. 【Asp.Net】得到http请求中的参数语句
  8. 个人对面向对象的理解总结
  9. Centos7 安装 memcached 1.4.25
  10. 【unity】简要分析yield及协同程序的用法