python win32api教程_解放双手——python win32api 入门「建议收藏」

python win32api教程_解放双手——python win32api 入门「建议收藏」#_*_coding:UTF-8_*_”’本文在原程序的基础上做了修改补充,更加清晰易懂。get_mouse_point():返回当前鼠标的值(x,y)mouse_move(x,y):移动鼠标mouse_click(x,y):单击mouse_dclick(x,y):双击put(str=”,flag=0):flag默认为0,则表示输入的字符串,为1:字符要表示的是快捷组合按键,快捷键要用空…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

# _*_ coding:UTF-8 _*_

”’

本文在原程序的基础上做了修改补充,更加清晰易懂。

get_mouse_point():返回当前鼠标的值(x,y)

mouse_move(x,y):移动鼠标

mouse_click(x,y):单击

mouse_dclick(x,y):双击

put(str=”,flag=0):flag默认为0,则表示输入的字符串,为1:字符要表示的是快捷组合按键,快捷键要用空格分开

”’

import win32api

import win32con

import win32gui

from ctypes import *

import time

VK_CODE = {

‘backspace’:0x08,

‘tab’:0x09,

‘clear’:0x0C,

‘enter’:0x0D,

‘shift’:0x10,

‘ctrl’:0x11,

‘alt’:0x12,

‘pause’:0x13,

‘caps_lock’:0x14,

‘esc’:0x1B,

‘spacebar’:0x20,

‘page_up’:0x21,

‘page_down’:0x22,

‘end’:0x23,

‘home’:0x24,

‘left_arrow’:0x25,

‘up_arrow’:0x26,

‘right_arrow’:0x27,

‘down_arrow’:0x28,

‘select’:0x29,

‘print’:0x2A,

‘execute’:0x2B,

‘print_screen’:0x2C,

‘ins’:0x2D,

‘del’:0x2E,

‘help’:0x2F,

‘0’:0x30,

‘1’:0x31,

‘2’:0x32,

‘3’:0x33,

‘4’:0x34,

‘5’:0x35,

‘6’:0x36,

‘7’:0x37,

‘8’:0x38,

‘9’:0x39,

‘a’:0x41,

‘b’:0x42,

‘c’:0x43,

‘d’:0x44,

‘e’:0x45,

‘f’:0x46,

‘g’:0x47,

‘h’:0x48,

‘i’:0x49,

‘j’:0x4A,

‘k’:0x4B,

‘l’:0x4C,

‘m’:0x4D,

‘n’:0x4E,

‘o’:0x4F,

‘p’:0x50,

‘q’:0x51,

‘r’:0x52,

‘s’:0x53,

‘t’:0x54,

‘u’:0x55,

‘v’:0x56,

‘w’:0x57,

‘x’:0x58,

‘y’:0x59,

‘z’:0x5A,

‘numpad_0’:0x60,

‘numpad_1’:0x61,

‘numpad_2’:0x62,

‘numpad_3’:0x63,

‘numpad_4’:0x64,

‘numpad_5’:0x65,

‘numpad_6’:0x66,

‘numpad_7’:0x67,

‘numpad_8’:0x68,

‘numpad_9’:0x69,

‘multiply_key’:0x6A,

‘add_key’:0x6B,

‘separator_key’:0x6C,

‘subtract_key’:0x6D,

‘decimal_key’:0x6E,

‘pide_key’:0x6F,

‘F1’:0x70,

‘F2’:0x71,

‘F3’:0x72,

‘F4’:0x73,

‘F5’:0x74,

‘F6’:0x75,

‘F7’:0x76,

‘F8’:0x77,

‘F9’:0x78,

‘F10’:0x79,

‘F11’:0x7A,

‘F12’:0x7B,

‘F13’:0x7C,

‘F14’:0x7D,

‘F15’:0x7E,

‘F16’:0x7F,

‘F17’:0x80,

‘F18’:0x81,

‘F19’:0x82,

‘F20’:0x83,

‘F21’:0x84,

‘F22’:0x85,

‘F23’:0x86,

‘F24’:0x87,

‘num_lock’:0x90,

‘scroll_lock’:0x91,

‘left_shift’:0xA0,

‘right_shift ‘:0xA1,

‘left_control’:0xA2,

‘right_control’:0xA3,

‘left_menu’:0xA4,

‘right_menu’:0xA5,

‘browser_back’:0xA6,

‘browser_forward’:0xA7,

‘browser_refresh’:0xA8,

‘browser_stop’:0xA9,

‘browser_search’:0xAA,

‘browser_favorites’:0xAB,

‘browser_start_and_home’:0xAC,

‘volume_mute’:0xAD,

‘volume_Down’:0xAE,

‘volume_up’:0xAF,

‘next_track’:0xB0,

‘previous_track’:0xB1,

‘stop_media’:0xB2,

‘play/pause_media’:0xB3,

‘start_mail’:0xB4,

‘select_media’:0xB5,

‘start_application_1’:0xB6,

‘start_application_2’:0xB7,

‘attn_key’:0xF6,

‘crsel_key’:0xF7,

‘exsel_key’:0xF8,

‘play_key’:0xFA,

‘zoom_key’:0xFB,

‘clear_key’:0xFE,

‘+’:0xBB,

‘,’:0xBC,

‘-‘:0xBD,

‘.’:0xBE,

‘/’:0xBF,

‘`’:0xC0,

‘;’:0xBA,

‘[‘:0xDB,

‘//’:0xDC,

‘]’:0xDD,

“‘”:0xDE,

‘`’:0xC0}

class POINT(Structure):#鼠标位置二维数组对象

_fields_ = [(“x”, c_ulong),(“y”, c_ulong)]

def get_mouse_point():#获取鼠标位置

po = POINT()

windll.user32.GetCursorPos(byref(po))

return int(po.x), int(po.y)

def mouse_click(x=None,y=None):#单击(左键)

if not x is None and not y is None:

mouse_move(x,y)

time.sleep(0.05)

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)#按下

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)#弹起

def mouse_dclick(x=None,y=None):#双击

if not x is None and not y is None:

mouse_move(x,y)

time.sleep(0.05)

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)

def mouse_move(x,y):#移动鼠标

windll.user32.SetCursorPos(x, y)

def put(str=”,flag=0):#flag默认为0,则表示输入的字符串,为1:字符要表示的是快捷组合按键

if flag==0:

for c in str:

if c == ‘ ‘:#处理空格

win32api.keybd_event(VK_CODE[‘spacebar’],0,0,0)

win32api.keybd_event(VK_CODE[‘spacebar’],0,win32con.KEYEVENTF_KEYUP,0)

else:

win32api.keybd_event(VK_CODE[c],0,0,0)

win32api.keybd_event(VK_CODE[c],0,win32con.KEYEVENTF_KEYUP,0)

else:

cmd = str.split(‘ ‘)

for i in cmd:

win32api.keybd_event(VK_CODE[i],0,0,0)

cmd.reverse()

for i in cmd:#快捷键释放的时候要逆序释放

win32api.keybd_event(VK_CODE[i],0,win32con.KEYEVENTF_KEYUP,0)

time.sleep(1)

if __name__ == “__main__”:

mouse_dclick(1083,139)

put(‘hello world’,0)

put(‘ctrl v’,1) #快捷键要用空格分开

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/183123.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 一文搞懂│php 中的 DI 依赖注入「建议收藏」

    一文搞懂│php 中的 DI 依赖注入「建议收藏」学好依赖注入,让编程更简单

  • Python 读取txt文件

    Python 读取txt文件1.首先将数据加载到Python中,看需要做哪些处理。2、从显示的内容可以看出,两个数字之间是以空格,作为分隔符,这里读成一行了。使用sep=””处理,打印查看效果。3、使用分隔符后,分成了三列。但是还有一个问题,第一行被当成了表头,解决方法:使用names=[]给每列命名~ok啦,现在可以实现读取txt文件的任务了~…

  • 图像处理-激光测距技术&工业相机基本原理概述「建议收藏」

    图像处理-激光测距技术&工业相机基本原理概述「建议收藏」激光测距技术与一般光学测距技术相比,具有操作方便、系统简单及白天和夜晚都可以工作的优点.与雷达测距相比,激光测距具有良好的抗干扰性和很高的精度,而且激光具有良好的抵抗电磁波干扰的能力,尤其在探测距离较长时,激光测距的优越性更为明显.激光测距技术是指利用射向目标的激光脉冲或连续波激光束测量目标距离的距离测量技术.比较常用的激光测距方法有脉冲法、相位法、三角法和干涉法激光测距.本文主要探讨下激光三角法的基本原理和工业相机原理:1.1激光三角法的基本原理光电技术的快速发展,以及计算.

  • vim撤销、回退操作「建议收藏」

    vim撤销、回退操作「建议收藏」打个广告,请有意向加入腾讯的前端,将简历发送至mzxbupt@gmail.com在vi中按u可以撤销一次操作u  撤销上一步的操作Ctrl+r恢复上一步被撤销的操作注意:如果你输入“u”两次,你的文本恢复原样,那应该是你的Vim被配置在Vi兼容模式了。重做如果你撤销得太多,你可以输入CTRL-R(redo)回退前一个命令。换句话说,它撤销一个撤销。要看执行的…

  • phpstorm 2021 激活码3月最新在线激活

    phpstorm 2021 激活码3月最新在线激活,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • IDEA 2022.2.3激活码_通用破解码

    IDEA 2022.2.3激活码_通用破解码,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号