簡體   English   中英

如何通過圖片的路徑以奇異的方式顯示

[英]How to pass the path of a picture to display with kivy

請原諒我,我是python和kivy的新手。 我的英語不好也很抱歉。

我正在嘗試顯示圖片,以及何時用奇異果拍攝。 我的問題是照片的路徑每次都不同,我不能只像屏幕背景一樣寫source : 'path' `

如何將文件名中包含的路徑傳遞到我的kv文件? 我在python / kivy之間完全迷失了,這可能很簡單,但是我找不到解決方案。

我的python文件的一部分:

class CountdownScreen(Screen):
    def capture(self, nbr_rep):
        for i in range(nbr_rep):
            sleep(4)
            self.dslr = Gphoto()
            self.filename = self.dslr.capture_image()

class DisplayPicture(Screen):
    pass

class PhotoboothApp(App):
    countdown = CountdownScreen()
    def build(self):
        return RootScreen()

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

我的kv文件的一部分:

<ChooseScreen>:
    name: "choose"
    FloatLayout:
        Image: #Background
            source: "Interface_PNG/Page_3.png"
            allow_stretch: True
            keep_ratio: False
            size_hint: 1, 1
        Button: #1
            id: b1
            background_color: 0, 0, 0, 0
            size_hint : 0.3, 0.5
            pos_hint: {'x' : 0.025, 'center_y' : 0.5}
            on_release: root.manager.current = "countdown"
            on_release: app.countdown.capture(1)

<DisplayPicture>:
    name: "display_picture"
    FloatLayout:
        Image: #Background
            source: 'Interface_PNG/Page_6.png'
            allow_stretch: True
            keep_ratio: False
            size_hint: 1, 1
        Image: #Picture
            source: ???
            keep_ratio: False
            allow_stretch: True
            size_hint: 0.67, 0.72
            pos_hint: {'center_x' : 0.565, 'center_y' : 0.50}

從kivy的Image文檔中:

重新加載()

從磁盤重新加載映像。 如果圖像內容發生更改,這有助於從磁盤重新加載圖像。

用法:

 im = Image(source = '1.jpg') # -- do something -- im.reload() # image will be re-loaded from disk 

如果需要,您還可以在重新加載之前更改源路徑。

im.source = "new_source.png"

請記住,這些更改必須以編程方式完成,因此您必須以某種方式在代碼中觸發它們,例如通過按下按鈕。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM