Linuxを使用していて、Web開発用にNattywareのPixieツールを再作成してみたいと思っています。gPickは大丈夫ですが、Pixieの方が優れています。
マウスポインタの周囲を検出して表示できるようにしたい。Pythonでズームインして、マウスポインタの周りの領域を表示する方法を見つけようとしています。
どこから始めたらいいのかわからない。画像を保存したくありません。ウィンドウ内のマウスの位置を拡大した領域を表示するだけです。
編集:私は何かが潜在的に機能することができるようになりました。これを実行しないでください、それはクラッシュします!
import sys, evdev
from Xlib import display, X
from PyQt4 import QtGui
from PyQt4.QtGui import QPixmap, QApplication, QColor
class printImage():
def __init__(self):
self.window = QtGui.QMainWindow()
self.window.setGeometry(0,0,400,200)
self.winId = QApplication.desktop().winId()
self.width = 150
self.height = 150
self.label = QtGui.QLabel('Hi')
self.label.setGeometry(10, 10, 400, 100)
self.label.show()
def drawView(self, x, y):
self.label.setText('abc')
pix = self.getScreenArea(x, y)
self.pic.setPixmap(pix)
def render(self):
self.window.show()
def getScreenArea(self, areaX, areaY):
image = QPixmap.grabWindow(
self.winId,
x = areaX,
y = areaY,
width = self.width,
height = self.height
)
return image
if __name__ == '__main__':
app = QApplication(sys.argv)
view = printImage()
view.render()
display = display.Display(':0')
root = display.screen().root
root.grab_pointer(
True,
X.PointerMotionMask | X.ButtonReleaseMask,
X.GrabModeAsync,
X.GrabModeAsync,
0, 0,
X.CurrentTime
)
while True:
ev = display.next_event()
view.drawView(ev.event_x, ev.event_y)
app.exec_()
なぜそれが自分自身を破壊するのか、何か考えはありますか?grabWindow()関数でクラッシュします。他に使用できるものはありますか?