代碼:
from kivy.uix.widget import Widget
from kivy.uix.image import Image
class MainWidget(Widget)。
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.add_cloud()
def add_cloud(self)。
img = Image(source="images/cloudbig.png"/span>)
return img
class TestApp(App)。
pass。
TestApp().run()
應該發生的是使用Kivy庫打開應用程式,添加一個小部件,然后添加一張圖片。但是影像并沒有顯示在視窗中,我只得到一個空的視窗。
我試著用一個單獨的 .kv 檔案來添加圖片,這很有效,但我需要在 .py 檔案中的一個函式中添加圖片,以回圈該函式。
我怎樣才能解決影像不顯示在螢屏上的問題呢?
uj5u.com熱心網友回復:
你的這個問題的原因是:
- 你不能添加任何東西在你的網站上。
- 你不能僅僅通過從一個方法/函式中回傳物件來添加widget(具體來說就是
Imagewidget),而是通過使用self.add_widget方法 。
- 你沒有在你的
TestApp類中創建任何build方法,如果你不使用kivy設計語言,這基本上是必要的 。
這是你的代碼示例,已修復:
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.image import Image
class MainWidget(Widget)。
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.add_cloud()
def add_cloud(self)。
img = Image(source="images/cloudbig.png"/span>)
self.add_widget(img)
class TestApp(App)。
def build(self)。
xd = MainWidget()
return xd
TestApp().run()
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/309066.html
標籤:
上一篇:WPF實作聚光燈效果
