【问题标题】:Images disappear when resizing window in Kivy在 Kivy 中调整窗口大小时图像消失
【发布时间】:2016-07-25 17:46:30
【问题描述】:

我一直在 Kivy 中关注 tutorial 并遇到问题。当我更改窗口大小时,图像不显示。我的代码是:

from kivy.core.window import Window
from kivy.uix.widget import Widget
from kivy.uix.image import Image
from kivy.app import App

class Sprite(Image):
    def __init__(self, **kwargs):
        super().__init__(**kwargs)
        self.size = self.texture_size

class Game(Widget):
    def __init__(self):
        super().__init__()
        self.background = Sprite(source="Sprites/CartoonForest.png")
        self.size = self.background.size
        self.add_widget(self.background)

class GameApp(App):
    def build(self):
        game = Game()
        Window.size = game.size
        return game

if __name__ == '__main__':
    GameApp().run()

我玩了一下,导入了不同扩展名和大小的不同图像,更改了代码等,但只有当我在 build 方法中省略了 Window.size = game.size 行时>GameApp 它显示了图像。当我通过拖动图像的一角调整窗口大小时,图像也消失了。

这是什么原因,我该如何修复屏幕尺寸以匹配图像尺寸?

我正在使用:

  • Mac OS X Yosemite 10.10.5
  • PyCharm 社区版 2016.1.4
  • Python 3.5.2
  • 基维 v1.9.1

【问题讨论】:

  • 我在master 分支上没有问题。尝试从源安装。另外,您的super() 也可以这样工作吗? O_ô
  • @KeyWeeUsr 你也在使用 OS X 吗?因为我确实相信这是 OS X 的问题,但我不确定并且仍在寻找答案。 super() 在 Python 3.x 中是合法的,因此在该区域没有问题(我也在许多其他程序中使用过它)。
  • 我没有,但是尝试使用 master 分支是个好主意。如果它是一个错误,它也可能为 Mac 修复。对不起super(),我还在用py2。
  • 这 - github.com/kivy/kivy 这是 kivy 的官方存储库。当前的 master 分支是 1.9.2 版本,您写道您使用的是 1.9.1。提到了如何安装它here

标签: python-3.x kivy


【解决方案1】:

这是我使用的当前版本的错误。从github 下载更新的版本解决了这个问题!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-21
    • 1970-01-01
    • 2011-03-17
    • 2017-04-29
    • 1970-01-01
    相关资源
    最近更新 更多