python 五子棋如何获得鼠标点击坐标


Posted in Python onNovember 04, 2019

这篇文章主要介绍了python 五子棋如何获得鼠标点击坐标,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

点坐标的取自:

from tkinter import *

root=Tk()

#创建一个框架,在这个框架中响应事件
frame=Frame(root,width=200,height=200)

def callBackLeft(event):
  print("相对于应用程序左上角的位置,左键点击的位置是",event.x,event.y)
  print("相对于屏幕左上角的位置,左键点击的位置是",event.x_root,event.y_root)

def callBackRight(event):
  print("右键点击的位置是",event.x,event.y)
  print("右键点击的位置是",event.x_root,event.y_root)

frame.bind("<Button-1>",callBackLeft)
frame.bind("<Button-3>",callBackRight)
frame.pack()

mainloop()

执行后 结果如图:

python 五子棋如何获得鼠标点击坐标

对坐标进行 处理和过滤得到 具体坐标

from tkinter import *
root = Tk()

size = 16

def piant(event):
  if event.x % 30 > 15:
    event.x = event.x // 30 + 1
  else:
    event.x = event.x // 30
  if event.y % 30 > 15:
    event.y = event.y // 30 + 1
  else:
    event.y = event.y // 30
  # 边缘检测
  if event.x > size:
    event.x = size
  if event.y > size:
    event.y = size
  if event.x < 1:
    event.x = 1
  if event.y < 1:
    event.y = 1

  print("x坐标:%d,y坐标:%d"%(event.x,event.y))

canvas = Canvas(root, width=500, height=500)
canvas.pack(expand=YES, fill=BOTH)

canvas.bind("<Button-1>",piant)

canvas.pack()


#画竖线
for num in range(1, 17):
  canvas.create_line(num * 30, 30,
            num * 30, 480,
            width=2)

#画横线
for num in range(1, 17):
  canvas.create_line(30, num * 30,
            480, num * 30,
            width=2)

root.mainloop()

执行后 结果如图:

python 五子棋如何获得鼠标点击坐标

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python Web框架Pylons中使用MongoDB的例子
Dec 03 Python
Python有序查找算法之二分法实例分析
Dec 11 Python
python list元素为tuple时的排序方法
Apr 18 Python
python 通过SSHTunnelForwarder隧道连接redis的方法
Feb 19 Python
详解Python静态网页爬取获取高清壁纸
Apr 23 Python
python模式 工厂模式原理及实例详解
Feb 11 Python
Django模板标签中url使用详解(url跳转到指定页面)
Mar 19 Python
pycharm2020.2 配置使用的方法详解
Sep 16 Python
python利用paramiko实现交换机巡检的示例
Sep 22 Python
关于python中remove的一些坑小结
Jan 04 Python
python中random模块详解
Mar 01 Python
linux中nohup和后台运行进程查看及终止
Jun 24 Python
Pandas 缺失数据处理的实现
Nov 04 #Python
python tkinter canvas使用实例
Nov 04 #Python
python matplotlib饼状图参数及用法解析
Nov 04 #Python
python制作朋友圈九宫格图片
Nov 03 #Python
python使用yield压平嵌套字典的超简单方法
Nov 02 #Python
基于python实现从尾到头打印链表
Nov 02 #Python
pandas 空数据处理方法详解
Nov 02 #Python
You might like
PHP实现的简单三角形、矩形周长面积计算器分享
2014/11/18 PHP
php+xml实现在线英文词典查询的方法
2015/01/23 PHP
PHP生成(支持多模板)二维码海报代码
2018/04/30 PHP
Javascript - HTML的request类
2006/07/15 Javascript
jQuery中Ajax的load方法详解
2015/01/14 Javascript
javascript中Object使用详解
2015/01/26 Javascript
Angularjs使用directive自定义指令实现attribute继承的方法详解
2016/08/05 Javascript
jQuery常用样式操作实例分析(获取、设置、追加、删除、判断等)
2016/09/08 Javascript
详解获取jq ul第一个li定位的四种解决方案
2016/11/23 Javascript
在使用JSON格式处理数据时应该注意的问题小结
2017/05/20 Javascript
react实现一个优雅的图片占位模块组件详解
2017/10/30 Javascript
JS常见DOM节点操作示例【创建 ,插入,删除,复制,查找】
2018/05/14 Javascript
JavaScript中join()、splice()、slice()和split()函数用法示例
2018/08/24 Javascript
vue+webpack 更换主题N种方案优劣分析
2019/10/28 Javascript
微信小程序收藏功能的实现代码
2020/06/19 Javascript
[47:43]完美世界DOTA2联赛PWL S3 Magama vs GXR 第二场 12.19
2020/12/24 DOTA
详解Python中映射类型(字典)操作符的概念和使用
2015/08/19 Python
Linux系统上Nginx+Python的web.py与Django框架环境
2015/12/25 Python
Python实现类的创建与使用方法示例
2017/07/25 Python
Python自定义线程池实现方法分析
2018/02/07 Python
对python-3-print重定向输出的几种方法总结
2018/05/11 Python
Python中的Django基本命令实例详解
2018/07/15 Python
Python字符串匹配之6种方法的使用详解
2019/04/08 Python
获取Pytorch中间某一层权重或者特征的例子
2019/08/17 Python
Python限制内存和CPU使用量的方法(Unix系统适用)
2020/08/04 Python
用sleep间隔进行python反爬虫的实例讲解
2020/11/30 Python
canvas学习总结三之绘制路径-线段
2019/01/31 HTML / CSS
Html5移动端div固定到底部实现底部导航条的几种方式
2021/03/09 HTML / CSS
享受加州生活方式的时尚舒适:XCVI
2018/07/09 全球购物
Laura Geller官网:美国彩妆品牌
2018/12/29 全球购物
Under Armour安德玛德国官网:美国高端运动科技品牌
2019/03/09 全球购物
Antler英国官网:购买安特丽行李箱、拉杆箱
2019/08/25 全球购物
美国小蜜蜂Burt’s Bees德国官网:天然唇部、皮肤和身体护理产品
2020/06/14 全球购物
Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解
2022/03/03 Python
java后台调用接口及处理跨域问题的解决
2022/03/24 Java/Android
Golang ort 中的sortInts 方法
2022/04/24 Golang