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中getattr函数和hasattr函数作用详解
Jun 14 Python
python 定义n个变量方法 (变量声明自动化)
Nov 10 Python
python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】
Jul 06 Python
下载官网python并安装的步骤详解
Oct 12 Python
Python3 解决读取中文文件txt编码的问题
Dec 20 Python
Python3如何判断三角形的类型
Apr 12 Python
python中的split、rsplit、splitlines用法说明
Oct 23 Python
Python常用扩展插件使用教程解析
Nov 02 Python
python3.8.3安装教程及环境配置的详细教程(64-bit)
Nov 28 Python
python 基于opencv操作摄像头
Dec 24 Python
在vscode中启动conda虚拟环境的思路详解
Dec 25 Python
关于Numpy之repeat、tile的用法总结
Jun 02 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
zf框架的校验器InArray使用示例
2014/03/13 PHP
Ruffy javascript 学习笔记
2009/11/30 Javascript
js对象之JS入门之Array对象操作小结
2011/01/09 Javascript
jQuery 开发者应该注意的9个错误
2012/05/03 Javascript
jquery中交替点击事件的实现代码
2014/02/14 Javascript
JavaScript基础函数整理汇总
2015/01/30 Javascript
获取IE浏览器Cookie信息的方法
2017/01/23 Javascript
javascript自定义事件功能与用法实例分析
2017/11/08 Javascript
JavaScript中Array方法你该知道的正确打开方法
2018/09/11 Javascript
js实现淘宝浏览商品放大镜功能
2020/10/28 Javascript
[01:10]3.19DOTA2发布会 三代刀塔人第一代
2014/03/25 DOTA
python基础教程之实现石头剪刀布游戏示例
2014/02/11 Python
Python基于Tkinter实现的记事本实例
2015/06/17 Python
通过Python使用saltstack生成服务器资产清单
2016/03/01 Python
Python 稀疏矩阵-sparse 存储和转换
2017/05/27 Python
Python使用requests发送POST请求实例代码
2018/01/25 Python
浅谈python正则的常用方法 覆盖范围70%以上
2018/03/14 Python
Django项目实战之用户头像上传与访问的示例
2018/04/21 Python
python3基于TCP实现CS架构文件传输
2018/07/28 Python
解决pyqt5中QToolButton无法使用的问题
2019/06/21 Python
详解python播放音频的三种方法
2019/09/23 Python
基于numpy中的expand_dims函数用法
2019/12/18 Python
Python开发入门——迭代的基本使用
2020/09/03 Python
python如何发送带有附件、正文为HTML的邮件
2021/02/27 Python
css3简单练习实现遨游浏览器logo的绘制
2013/01/30 HTML / CSS
htnl5利用svg页面高斯模糊的方法
2018/07/20 HTML / CSS
洲际酒店集团大中华区:IHG中国
2016/08/17 全球购物
Fossil德国官网:化石手表、手袋、珠宝及配件
2019/12/07 全球购物
青春奉献演讲稿
2014/05/08 职场文书
社团活动总结怎么写
2014/06/30 职场文书
感恩老师演讲稿400字
2014/08/28 职场文书
如何写贫困证明申请书
2014/10/29 职场文书
新生儿未入户证明
2015/06/23 职场文书
高中英语教学反思范文
2016/03/02 职场文书
python 提取html文本的方法
2021/05/20 Python
MySQL学习之基础命令实操总结
2022/03/19 MySQL