python - 调整无边框窗口大小
问题描述
我知道有几种方法可以在 pygame 中调整屏幕大小,但是我无法按照我想要的方式进行调整。
我使用的方法是使表面适合屏幕,这意味着它将保持成比例,但会有边框。我想要做的是调整表面的大小,然后对表面的裁剪版本进行 blit。因此,它不会显示边界,而是针对不同尺寸显示不同数量的表面。
我应该如何做到这一点?
这是我尝试过的。
blit_surf_rect = transform.scale(blit_surf, (blit_surf.get_width(), blit_surf.get_height())).get_rect()
fit_to_rect = blit_surf_rect.fit(screen.get_rect())
fit_to_rect.center = screen.get_rect().center
scaled = transform.scale(blit_surf, (fit_to_rect.size[0]*scale, fit_to_rect.size[1]*scale))
screen.blit(scaled, (xPos, yPos)
display.flip()
这样做的问题是我不知道如何获取相对鼠标位置以及如何不对用户不可见的额外内容进行 blit。
解决方案
推荐阅读
- c++ - 通过引用从函数返回到本地引用
- html - '|' 和有什么不一样 和 CSS 中的 ^
- deep-learning - NVLink 是否使用 DistributedDataParallel 加速训练?
- python - 为什么我不能删除 pyplot 刻度标签?
- python - Python lambda if 语句 - 你必须有别的吗?
- git - VS Code 不会拉/推到 devops
- c# - 这种语法的 C# 等价物是什么?
- sql - 使用 PostgreSQL pg 和 Node JS 编写 SELECT CASE 语句
- c - 您能否将一次调用 malloc 分配的内存用于各种变量类型?
- python - PyId_ 变量如何在 CPython 中解析?