用python3 返回鼠标位置的实现方法(带界面)

yipeiwu_com7年前Python基础

点击获取后,返回2s后的鼠标位置,显示在文本框

(需要用pip命令安装所需的的库)

(pip install 模块名

比如 安装pyautogui 模块

在cmd里面输入: pip install pyautogui)

#!/usr/bin/python3
# -*- coding: UTF-8 -*-

import time
import pyautogui as pag
import tkinter


def get():
  po.delete(0,tkinter.END)
	time.sleep(2) #几秒后返回位置
  x , y = pag.position()
  po.insert(0,str(x)+','+str(y))

root = tkinter.Tk()
tip = tkinter.Label(root,text="返回点击获取2s后的光标位置")
tip.grid(row=0)
po = tkinter.Entry(root)
po.grid(row=1)
do = tkinter.Button(root,text="获取",command=get) #点击获取位置
do.grid(row=2)


root.mainloop()

闲得无聊把时间调成可改了,但是其中一个if莫名其妙运行不了,求大神解释QAQ

由于布局问题,若要调整窗口位置,请拖动左上角

#!/usr/bin/python3
# -*- coding: UTF-8 -*-

import time
import pyautogui as pag
import tkinter

mytime = 2

#判断时间是否合法
def safe():			
	text = getmytime.get();
	#小数点个数
	point = 0
	if(text==""):
		return False
	for i in text:
		if(i>='0' and i<='9'and point<2):
			continue
		elif(i=='.'):
			point = point + 1
		else:
			return False
	return True
def get():
	global mytime
	if(safe()):
		mytime = float(getmytime.get())
		
		#不知道为何下面的这个if没用
		if(mytime>7.0):
			showpos.delete(0,tkinter.END)
			showpos.insert(0,"请耐心等候")
	
		time.sleep(mytime) #几秒后返回位置
		x , y = pag.position()
		showpos.delete(0,tkinter.END)
		showpos.insert(0,str(x)+','+str(y))
	else:
		showpos.delete(0,tkinter.END)
		showpos.insert(0,"输入非法哟~")

 
root = tkinter.Tk()
root.resizable(0,0)

tip1 = tkinter.Label(root,text="点击按钮获取")
tip1.place(relx=0.1,rely=0.1)
getmytime = tkinter.Entry(root,width=3)
getmytime.place(relx=0.6,rely=0.1)
getmytime.insert(0,str(mytime))
tip2 = tkinter.Label(root,text="s后的")
tip2.place(relx=0.8,rely=0.1)

tip3 = tkinter.Label(root,text="光标位置:")
tip3.place(relx=0.1,rely=0.3)
showpos = tkinter.Entry(root,width=10)
showpos.place(relx=0.5,rely=0.3)
do = tkinter.Button(root,text="按钮",command=get) #点击获取位置
do.place(relx=0.8,rely=0.6)


root.mainloop()

以上这篇用python3 返回鼠标位置的实现方法(带界面)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

初步讲解Python中的元组概念

初步讲解Python中的元组概念

 元组是不可变的Python对象序列。元组的序列就像列表。唯一的区别是,元组不能被改变,即元组是不可被修改。元组使用小括号,而列表使用方括号。 创建一个元组很简单,只要把不同的...

Python Requests安装与简单运用

requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢?官方文档中是这样说明的: python的标...

对python numpy数组中冒号的使用方法详解

对python numpy数组中冒号的使用方法详解

python中冒号实际上有两个意思:1.默认全部选择;2. 指定范围。 下面看例子 定义数组 X=array([[1,2,3,4],[5,6,7,8],[9,10,11,12],[1...

详解Python 函数如何重载?

什么是函数重载?简单的理解,支持多个同名函数的定义,只是参数的个数或者类型不同,在调用的时候,解释器会根据参数的个数或者类型,调用相应的函数。 重载这个特性在很多语言中都有实现,比如 C...

简单谈谈python的反射机制

  对编程语言比较熟悉的朋友,应该知道“反射”这个机制。Python作为一门动态语言,当然不会缺少这一重要功能。然而,在网络上却很少见到有详细或者深刻的剖析论文。下面结合一个web路由的...