Kivy图片/删除图片

时间:2018-07-06 11:19:05

标签: python kivy

关于Kivy Image小部件。我似乎无法弄清楚如何删除源以使其空白。

例如:

 .config(function ($urlRouterProvider, $stateProvider) {
$stateProvider
.state('home', {
    url: '/',
    templateUrl: 'views/main.html',
    controller: 'MainCtrl'
});

当没有数据要显示时,我想清除图像窗口小部件的内容。

谢谢, 丹

2 个答案:

答案 0 :(得分:0)

解决方案

由于 source 是StringProperty,因此请为其分配一个空字符串。

kivy_image_widget.source = ''

Image »source

source
     

图像的文件名/来源。

     

source是一个StringProperty,默认为None。

示例

main.py

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout


class RootWidget(BoxLayout):

    def clear_image(self):
        self.ids.img2.source = ''
        self.ids.img2.reload()


class TestApp(App):

    def build(self):
        return RootWidget()


if __name__ == "__main__":
    TestApp().run()

test.kv

#:kivy 1.11.0

<RootWidget>:
    orientation: 'vertical'

    Image:
        id: img1
        source: 'kivyLogo.png'

    Image:
        id: img2
        source: 'raspberrypi.png'

    Button:
        text: 'Clear Image 2'
        size_hint_y: 0.1
        on_release:
            root.clear_image()

输出

Img01 Img02 - Image 2 Cleared

答案 1 :(得分:0)

如果只需要将其空白,请使用opacity属性,如下所示:

kivy_image_widget.opacity = 0