如何使用 getMouse() 捕获右键单击事件

2024-02-15

我正在尝试使用graphics.py 编写用户图形界面。问题是如何捕获右键事件呢?看来函数 getMouse() 只能返回鼠标左键单击的位置作为 Point 对象。

    from graphics import *
    def main():
        win = GraphWin("My Circle", 100, 100)
        c = Circle(Point(50,50), 10)
        c.draw(win)
        win.getMouse() # pause for click in window
        win.close()
     main()

我想知道如何捕获窗口中的右键单击事件,谢谢。


我建议你尝试一下TkInter http://wiki.python.org/moin/TkInter对于Python GUI。

这是检测右键单击的示例:

from Tkinter import *


def showPosEvent(event):
    print 'Widget=%s X=%s Y=%s' % (event.widget, event.x, event.y)



def onRightClick(event):
    print 'Got right mouse button click:', 
    showPosEvent(event)


tkroot = Tk()
labelfont = ('courier', 20, 'bold')               
widget = Label(tkroot, text='Hello bind world')
widget.config(bg='red', font=labelfont)          
widget.config(height=5, width=20)                
widget.pack(expand=YES, fill=BOTH)

widget.bind('<Button-3>',  onRightClick)        


widget.focus()                                    
tkroot.title('Click Me')
tkroot.mainloop()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 getMouse() 捕获右键单击事件 的相关文章

  • 围绕 readline 构建的 python 批处理的触发器选项卡完成

    背景 我有一个 python 程序 它导入并使用 readline 模块来构建自制的命令行界面 我有第二个 python 程序 围绕 Bottle 一个 Web 微框架构建 充当该 CLI 的前端 第二个 python 程序向第一个程序打开
  • Python - 将宽字符字符串从二进制文件转换为 Python unicode 字符串

    这是漫长的一天 我有点困惑 我正在读取一个包含大量宽字符字符串的二进制文件 我想将它们转储为 Python unicode 字符串 为了解压非字符串数据 我使用 struct 模块 但我不知道如何对字符串执行相同的操作 例如 阅读 系列 一
  • Django 模型在模板中不可迭代

    我试图迭代模型以获取列表中的第一个图像 但它给了我错误 即模型不可迭代 以下是我的模型和模板的代码 我只需要获取与单个产品相关的列表中的第一个图像 模型 py class Product models Model title models
  • 如何计算numpy数组中元素的频率?

    我有一个 3 D numpy 数组 其中包含重复的元素 counterTraj shape 13530 1 1 例如 counterTraj 包含这样的元素 我只显示了几个元素 array 136 129 130 103 102 101 我
  • Pandas 数据帧到 numpy 数组 [重复]

    这个问题在这里已经有答案了 我对 Python 很陌生 经验也很少 我已经设法通过复制 粘贴和替换我拥有的数据来使一些代码正常工作 但是我一直在寻找如何从数据框中选择数据 但无法理解这些示例并替换我自己的数据 总体目标 如果有人真的可以帮助
  • 切片 Dataframe 时出现 KeyError

    我的代码如下所示 d pd read csv Collector Output csv df pd DataFrame data d dfa df copy dfa dfa rename columns OBJECTID Object ID
  • 更改 `base_compiledir` 以将编译后的文件保存在另一个目录中

    theano base compiledir指编译后的文件存放的目录 有没有办法可以永久设置theano base compiledir到不同的位置 也许通过修改一些内部 Theano 文件的内容 http deeplearning net
  • 对图像块进行多重处理

    我有一个函数必须循环遍历图像的各个像素并计算一些几何形状 此函数需要很长时间才能运行 在 24 兆像素图像上大约需要 5 小时 但似乎应该很容易在多个内核上并行运行 然而 我一生都找不到一个有据可查 解释充分的例子来使用 Multiproc
  • 如何解决使用 Spark 从 S3 重新分区大量数据时从内存中逐出缓存的表分区元数据的问题?

    在尝试从 S3 重新分区数据帧时 我收到一个一般错误 Caused by org apache spark SparkException Job aborted due to stage failure Task 33 in stage 1
  • Numpy 过滤器平滑零区域

    我有一个 0 及更大整数的 2D numpy 数组 其中值代表区域标签 例如 array 9 9 9 0 0 0 0 1 1 1 9 9 9 9 0 7 1 1 1 1 9 9 9 9 0 2 2 1 1 1 9 9 9 8 0 2 2 1
  • Pandas 根据 diff 列形成簇

    我正在尝试使用 Pandas 根据表示时间 以秒为单位 的列中的差异来消除数据框中的一些接近重复项 例如 import pandas as pd numpy as np df pd DataFrame 1200 1201 1233 1555
  • Python 将日志滚动到变量

    我有一个使用多线程并在服务器后台运行的应用程序 为了无需登录服务器即可监控应用程序 我决定包括Bottle http bottlepy org为了响应一些HTTP端点并报告状态 执行远程关闭等 我还想添加一种查阅日志文件的方法 我可以使用以
  • 创建嵌套字典单行

    您好 我有三个列表 我想使用一行创建一个三级嵌套字典 i e l1 a b l2 1 2 3 l3 d e 我想创建以下嵌套字典 nd a 1 d 0 e 0 2 d 0 e 0 3 d 0 e 0 b a 1 d 0 e 0 2 d 0
  • 使用 Firefox 绕过弹出窗口下载文件:Selenium Python

    我正在使用 selenium 和 python 来从中下载某些文件web page http www oceanenergyireland com testfacility corkharbour observations 我之前一直使用设
  • 使用 NumPy 将非均匀数据从文件读取到数组中

    假设我有一个如下所示的文本文件 33 346 1223 10 23 11 23 12 23 13 23 14 23 15 23 16 24 10 24 11 24 12 24 13 24 14 24 15 24 16 25 14 25 15
  • mac osx 10.8 上的初学者 python

    我正在学习编程 并且一直在使用 Ruby 和 ROR 但我觉得我更喜欢 Python 语言来学习编程 虽然我看到了 Ruby 和 Rails 的优点 但我觉得我需要一种更容易学习编程概念的语言 因此是 Python 但是 我似乎找不到适用于
  • 默认情况下,Keras 自定义层参数是不可训练的吗?

    我在 Keras 中构建了一个简单的自定义层 并惊讶地发现参数默认情况下未设置为可训练 我可以通过显式设置可训练属性来使其工作 我无法通过查看文档或代码来解释为什么会这样 这是应该的样子还是我做错了什么导致默认情况下参数不可训练 代码 im
  • 迭代 my_dict.keys() 并修改字典中的值是否会使迭代器失效?

    我的例子是这样的 for my key in my dict keys my dict my key mutate 上述代码的行为是否已定义 假设my dict是一本字典并且mutate是一个改变其对象的方法 我担心的是 改变字典中的值可能
  • 如何使用边缘和内部镶嵌因子完成三角形面片镶嵌?

    I am just learning tessellation and i came across with below example for triangle patch tessellation but i am not sure h
  • 列表值的意外更改

    这是我的课 class variable object def init self name name alias parents values table name of the variable self name 这是有问题的函数 f

随机推荐

  • 在 NSPredicate 中使用 NSDate

    是否有特定的方法来配置 NSPredicate 来比较日期 本质上我有一个 Photo 对象 它有一个 NSDate lastViewed 我想配置一个 NSPredicate 它将返回最近在指定时间段 通常是两天 之前查看过的所有照片对象
  • 当我尝试安装 @nuxtjs/firebase 时出现 NPM 错误

    我收到这个错误 我不理解 而且我真的不知道如何修复 我正在使用 Nuxt js 我想同时使用 firebase 但是当我尝试 firebase nuxtjs 时 org 并安装 nuxtjs firebase 我收到此错误 npm ERR
  • 如何修复“UIPopoverController 已弃用”警告?

    我正在使用这段代码 mediaLibraryPopover UIPopoverController alloc initWithContentViewController avc self mediaLibraryPopover prese
  • Highcharts 在某些缩放级别不显示数据

    我正在使用 Highcharts Highstock 绘制相当大量的数据 10 000 点 数据由 X 轴上的 Date 对象组成 Y 轴上浮动 格式如下 date 1 728 date 0 346 日期始终相隔 1 小时 并且数据中没有间
  • 处置 RestRequest RestSharp 对象?

    我正在使用 RestSharp 并创建 RestRequest 对象以将 FileData 发送到 API 但是在得到响应后 我想从本地计算机中删除该文件 但是当我尝试执行相同操作时 它给了我错误 文件正在被其他进程使用 我认为的原因是我无
  • 附件名称和文件扩展名在电子邮件 *.eml 中不起作用

    我想在以下位置创建电子邮件文件 eml格式为包含多个附件 附件已生成 且附件内容正确 但附件总是进来 dat格式和文件名为 ATT00001 ATT0002 等 目前我正在遵循中给出的解决方案这个计算器问题 https stackoverf
  • UIDocument 和 NSFileWrapper - 尽管增量更改,大文件仍需要很长时间才能保存

    我有一个UIDocument基于应用程序使用NSFileWrappers 来存储数据 主 文件包装器包含许多附加的目录文件包装器 每个包装器代表文档的不同页面 保存仅修改了一小部分页面的大型文档时 UIDocument在后台花费很长时间编写
  • BeautifulSoup - findAll 不在特定标签内

    因此 我试图找到一种方法来查找 BeautifulSoup 对象中具有某个标签但不在某个其他标签内的所有项目 例如 td class disabled first div class dayContainer p class day 29
  • 尝试将 pandas 数据框插入临时表

    我正在创建一个临时表并向其中插入一些数据 我广泛使用 pyodbc 来提取数据 但我不熟悉如何从 python 环境将数据写入 SQL 我在工作中这样做 所以我没有能力创建表 但我可以创建临时表和全局临时表 我的目的是将一个相对较小的数据帧
  • 如何在 Rust 2018 中为 crate 指定别名?

    我有一个箱子foo sys 在 Rust 2015 中我使用了extern crate foo sys as foo为了方便起见 但在 Rust 2018 中extern crate不再需要 我不想仅将它用于别名 掉落时extern cra
  • Tkinter 变量跟踪方法回调的参数是什么?

    Python 有 Tkinter 变量的类StringVar BooleanVar 等等这些都共享方法get set string and trace mode callback The callback函数作为第二个参数传递给trace
  • 如何使视频的宽度为100%或高度为100%

    我有同样的问题this https stackoverflow com questions 27328009 100 height or 100 width但我正在尝试这样做
  • 是否可以将单个文件从一个 SVN 存储库迁移到另一个存储库,同时保留历史记录?

    我在我的个人 SVN 存储库中启动了一个小应用程序 它引起了足够的兴趣 值得将开发转移到共享组存储库 可以将应用程序 仅单个文件 及其历史记录迁移到组存储库吗 查看 svnadmin dump svnadmin load 和 svndump
  • Saxon 与 Visual Studio 2010 - 有没有办法使用调试器?

    我们花费了越来越多的时间来应对 Microsoft XSLT 1 0 处理器的限制 我认为现在是开始使用 XSLT 2 0 的时候了 撒克逊似乎是一个不错的选择 问题是 Visual Studio 集成的 XSLT 调试器非常棒 没有人想停
  • NSString stringWithFormat 使用制表符而不是空格

    您可以看到我在字符串后添加了 40 个空格 但它从索引 0 开始 我可以用制表符 t 而不是空格 做同样的事情吗 NSString firstString NSString stringWithFormat stringToWrite st
  • QML 中的 if 语句

    对于 QT 和 QML 来说是全新的 我试图根据两个属性双精度之间的关系设置矩形的颜色callValue and handRaiseXBB 但我收到错误 意外的标记如果 and 需要一个限定名称 id 谁能告诉我我做错了什么 import
  • Arduino:使用串口和软件串口与蓝牙模块

    我的目的是使用 Arduino 通过 HC 05 蓝牙模块在 PC 和 Android 设备之间建立通信 我使用 PC 和 Arduino 串行监视器 之间的 USB 通信以及 SoftwareSerial 来连接到 HC 05 我的问题是
  • 如何在 PHP 中模拟单精度浮点运算?

    我需要将一个简单的 C 程序移植到 PHP 目前我们必须启动该过程并解析其输出 程序很琐碎 但是对于算法的使用很重要float因为错误会累积起来 结果会大相径庭 C 示例 include
  • 强制 jQuery UI Datepicker 显示在输入字段下方

    我有一个页面 其中包含一个表单和几个字段 我的问题如下 我试图强制 jQuery UI 日期选择器显示在输入字段下方 当我单击输入字段时 我希望该字段也滚动到页面顶部 我想我有这个工作 这是我的 jQuery JQUERY document
  • 如何使用 getMouse() 捕获右键单击事件

    我正在尝试使用graphics py 编写用户图形界面 问题是如何捕获右键事件呢 看来函数 getMouse 只能返回鼠标左键单击的位置作为 Point 对象 from graphics import def main win GraphW