我认为这个问题很基本,但它让我停了两天。 我想做一个简单的Kivy GUI应用程序。将文件夹拖动到ScrollView,然后ScrollView显示文件夹中的文件。 我在这里:
from kivy.app import App
from kivy.uix.button import Button
from kivy.core.window import Window
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.scrollview import ScrollView
from kivy.uix.gridlayout import GridLayout
class DropApp(App):
def build(self):
box = BoxLayout()
scrV = ScrollView(width = 300, height = 400, size_hint_x=None, size_hint_y=None)
box.add_widget(scrV)
layout = GridLayout(cols=1, spacing=10, size_hint_y=None)
layout.bind(minimum_height=layout.setter('height'))
for i in range(100):
btn = Button(text=str(i), size_hint_y=None, height=40)
layout.add_widget(btn)
scrV.add_widget(layout)
Window.bind(on_dropfile=self.handledrops(widget = scrV))
return box
def handledrops(self, widget, filename, *args):
if widget.collide_point(*Window.mouse_pos):
print(filename)
if __name__ == '__main__':
DropApp().run()
注意:拖放到窗口小部件,而不是窗口。 我做了很多谷歌搜索,研究了很多例子。我找不到代码有什么问题。 互联网上的大多数示例都使用大量的类。但我想要的是窗口、按钮、标签。。。。我试图理解什么是类,什么是init,什么是self,什么是super()。但它们使代码变得抽象。所以我尽可能地避开它们。希望有人能帮助我这个代码有什么问题
相关问题 更多 >
编程相关推荐