import time
import ctypes
key | keycode |
---|---|
PageUp | 33 |
PageDown | 34 |
End | 35 |
Home | 36 |
← | 37 |
↑ | 38 |
→ | 39 |
↓ | 40 |
これどうやって左に寄せるのかよくわからなかった(´・ω・`)
class TestScroll(object):
def __init__(self, hwnd):
self._hwnd = hwnd
self._msg = ctypes.windll.user32.RegisterWindowMessageA(
b'MetaTrader4_Internal_Message'
)
self._sm = ctypes.windll.user32.SendMessageA
def fw(self):
self._sm(self._hwnd, 0x0100, 39, 0)
self._sm(self._hwnd, 0x0101, 39, 0)
def bk(self):
self._sm(self._hwnd, 0x0100, 37, 0)
self._sm(self._hwnd, 0x0101, 37, 0)
def home(self):
self._sm(self._hwnd, 0x0100, 36, 0)
self._sm(self._hwnd, 0x0101, 36, 0)
def end(self):
self._sm(self._hwnd, 0x0100, 35, 0)
self._sm(self._hwnd, 0x0101, 35, 0)
def pageup(self):
self._sm(self._hwnd, 0x0100, 33, 0)
self._sm(self._hwnd, 0x0101, 33, 0)
def pagedown(self):
self._sm(self._hwnd, 0x0100, 35, 0)
self._sm(self._hwnd, 0x0101, 35, 0)
def mouse_fw(self):
# WM_MOUSEWHEEL 0x020A
WHEEL_DELTA = 120
delta = WHEEL_DELTA;
w = (delta << 16)
self._sm(self._hwnd, 0x020A, w, 0)
def mouse_bk(self):
WHEEL_DELTA = 120
delta = WHEEL_DELTA;
w = (delta << 16)
self._sm(self._hwnd, 0x020A, -w, 0)
test = TestScroll(532604)
test.home()
time.sleep(0.5)
test.end()
time.sleep(0.5)
test.home()
time.sleep(0.5)
test.end()
n = 1000
for i in range(n):
test.fw()
for i in range(n):
test.bk()
for i in range(n):
test.fw()
for i in range(n):
test.bk()
n = 2
for i in range(n):
test.pagedown()
time.sleep(0.5)
for i in range(n):
test.pageup()
time.sleep(0.5)
for i in range(n):
test.pagedown()
time.sleep(0.5)
for i in range(n):
test.pageup()
n = 1000
for i in range(n):
test.mouse_fw()
time.sleep(0.5)
for i in range(n):
test.mouse_bk()
time.sleep(0.5)
for i in range(n):
test.mouse_fw()
time.sleep(0.5)
for i in range(n):
test.mouse_bk()
time.sleep(0.5)
for i in range(n):
test.mouse_fw()