当前位置: 首页 > 知识库问答 >
问题:

pygame.mouse.get_visible失败

许明朗
2023-03-14

我写了一个方便的屏幕键盘模块,当我在电脑上编写打算以平板模式运行的程序时,我可以导入和使用它。因为我想在未来的许多程序中导入和使用这个实用程序,我想存储当前鼠标位置和在模块开始时鼠标可见性状态,然后在模块退出时恢复那些条件。mouse.get_pos()命令工作正常,但是.mouse.get_visible()命令失败,返回错误消息:AtiniteError:模块'pygame.mouse'没有属性'get_visible'pyplay鼠标留档将其列为一个有效的方法(https://www.pygame.org/docs/ref/mouse.html),我没有看到它被折旧或移除的迹象。

下面是一个示例程序,演示了该问题:

import pygame
from time import sleep
pygame.init()

screen = pygame.display.set_mode((3000,2000),pygame.FULLSCREEN)
screen.fill(pygame.Color("lightblue"))
pygame.display.flip()
print()

pygame.mouse.set_visible(True)
print(" pygame.mouse.get_pos() returned >>",pygame.mouse.get_pos())

try:
    print(pygame.mouse.get_visible())
except:
    print(" pygame.mouse.get_visible() failed!")

try:
    print(pygame.mouse.get_visible)
except:
    print(" pygame.mouse.get_visible failed too.")

print()    
sleep(1)
pygame.quit()

接受的答复将回答两个问题:

1.)这个方法是坏了/遗漏了,还是我遗漏了这里明显的东西?

2.)对于如何在不使用get_visible()方法的情况下获得可见性状态,以便在离开键盘模块之前恢复状态,是否有任何建议?

共有1个答案

慕嘉茂
2023-03-14

在某些系统上,需要在鼠标指针更改生效之前处理事件:

pygame.mouse.set_visible(False)
print(" pygame.mouse.get_pos() returned >>",pygame.mouse.get_pos())

pygame.event.pump()

try:
    print(pygame.mouse.get_visible())
except:
    print(" pygame.mouse.get_visible() failed!")

请参见pygame。事件get()分别pygame。事件泵()

对于游戏的每一帧,您都需要对事件队列进行某种调用。这确保您的程序可以与操作系统的其他部分进行内部交互。

 类似资料:
  • 我尝试运行这个gradle任务(通过gradlew) 它使用cucmber jvm 并收到此错误 当我从cmd中的同一路径运行同一行时: 更新1: 这个cmd在shell控制台中工作: ./构建/发行版/WebLarge测试/bin/WebLargeTests-f html:构建/报告/cucumber/-f json:构建/报告/cucumber/report.json--胶水com.waze.

  • 在两台不同的笔记本电脑上使用maven构建相同的项目。一个是运行良好,一个是显示错误。 状态:两个系统的配置相同。 使用的命令:mvn clean install-DskipTests=true 错误: 我什至尝试删除所有内容,例如再次创建. m2文件夹。

  • 问题内容: 我的程序使用该类(系统偏好设置,而不是用户)将加密的产品密钥数据保存到计算机。问题是,在Windows和Linux上(尚未在OSX上进行测试,但可能是相同的),如果我不使用具有管理员权限的程序运行该程序,则在尝试读取或读取该程序时,它将发出异常或警告。保存数据。 显然,要求用户以“管理员”权限运行程序是不切实际的。理想情况下,我希望操作系统请求用户许可。 这很愚蠢,并且消除了的一半目的

  • 问题内容: 当我使用getFromLocationName调用时,我得到一个IOException,描述为“ grpc failed”。 运行的代码 错误的控制台输出: Android SDK版本(API级别):25 Android Studio插件是最新的。 提前致谢! 编辑: 问题现在似乎已经解决,这是我的解决方案。 问题答案: 更新: 该问题现在似乎已解决。我不确定问题是否就此解决了,因此,

  • 我正在尝试构建我的Android应用程序与Gradle在控制台。但关于任务“:app:TransformClasseSandResourcesWithProGuardForRelease”的获取以下错误: ./gradlew构建--堆栈跟踪 这是我收到的例外情况: