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

使用Python获取屏幕方向

陆卓
2023-03-14

我用Python和Pyplay做了一个简单的游戏。

游戏在两个方向(纵向和横向)上都有效,因为我在打开游戏时使用的方向是相同的。

如果我在游戏运行时旋转设备改变方向,所有东西都会出现在错误的位置。

问题是,我不知道如何检测设备是否已旋转以正确重画屏幕。

那么,我的问题是:

如何检测用户仅使用Python或PyGame代码旋转设备?

重要提示:建议不应与任何特定操作系统相关,因为相同的代码必须在带有触摸屏(运行Linux、Windows或OS X)和移动设备(运行Android或iOS)的笔记本电脑上运行。

观察:我尝试创建另一个屏幕,以获得其大小,并使用pygame与实际屏幕进行比较。陈列设置_mode(),但此新屏幕返回与实际屏幕相同的大小,而不是宽度等于实际屏幕高度。

谢谢你的帮助。

共有1个答案

申宜
2023-03-14

通过set\u mode()生成显示表面时,必须设置resizeable标志。当逻辑显示分辨率改变时,您会得到一个VIDEORESIZE事件:

screen = pygame.set_mode((0, 0), pygame.FULLSCREEN | pygame.pygame.RESIZABLE)
width, height = screen.get_size()
while run:

    for event in pygame.event.get():
    
        if event.type == pygame.VIDEORESIZE:
             width, height = event.w, event.h
 类似资料:
  • 我正在使用Python 2.7和OpenCV 2.4。9 我需要捕获显示给用户的当前帧,并将其加载为Python中的cv::Mat对象。 你们知道一种快速递归的方法吗? 我需要像下面的例子中所做的那样,从网络摄像头递归地捕获Mat帧: 在本例中,它使用了VideoCapture类来处理从网络摄像头捕获的图像。 用视频捕捉。read()新帧总是被读取并存储到Mat对象中。 我可以将“打印屏幕流”加载

  • 问题内容: 我需要找到访问我的网站的用户屏幕的屏幕分辨率? 问题答案: 您无法使用纯PHP做到这一点。您必须使用JavaScript来完成。有几篇有关如何执行此操作的文章。 本质上,您可以设置cookie,甚至可以执行一些Ajax来将信息发送到PHP脚本。如果使用jQuery,则可以执行以下操作: jQuery: PHP(some_script.php) 所有这些实际上都是最基本的,但是它应该可以

  • 本文向大家介绍使用Tkinter Python获取屏幕的高度和宽度,包括了使用Tkinter Python获取屏幕的高度和宽度的使用技巧和注意事项,需要的朋友参考一下 Tkinter是为Python程序提供GUI编程功能的库。作为GUI创建的一部分,我们需要创建不同大小和深度的屏幕布局。在此程序中,我们将看到如何以像素和毫米为单位计算屏幕尺寸。我们还可以获得以像素为单位的屏幕深度。作为Tkinte

  • 本文向大家介绍写个方法获取屏幕的DPI相关面试题,主要包含被问及写个方法获取屏幕的DPI时的应答技巧和注意事项,需要的朋友参考一下

  • 我试图根据用户输入的坐标捕捉区域截图。基本上,用户在屏幕上点击得到x,y坐标,然后在其他地方点击另一对x,y坐标,然后将其放入一个矩形中,并使用机器人库创建屏幕截图。 我有的问题是,我得到了随机截图,这不是用户输入的坐标,我怎么能考虑包括0的坐标,因为矩形值必须超过1。 以下是我迄今为止的代码:

  • 我试图创建一个通用的网络爬虫,将去一个网站和截图。我使用的是Python、Selnium和PhantomJS。问题是截图并没有捕获页面上的所有图像。例如,如果我去you tube,它不会捕捉主页图像下面的图像。(我没有足够高的rep来发布屏幕截图)我认为这可能与动态内容有关,但我已经尝试了等待函数,如隐式等待和on set_page_load_timeout方法。因为这是一个通用的爬虫,我不能等待