嘿,我最近开始使用python / kivy编程。 我有一个基本问题,我找到的文件无法解决。
我想在我的根(ScreenLayout)上面添加一个自定义函数(InitiateGraph)。 在这个函数中,我正在使用matplotlib绘制图形,这是通过应用程序的调用生成的。它应该是这样的:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|here should be the plotted graph from InitiateGraph|
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
| here should follow the GridLayout (ScreenLayout) |
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
目前这两个街区是相反的。 请参阅以下简约示例。
Python的代码:的
class ScreenLayout(GridLayout):
def __init__(self, *args, **kwargs):
super(ScreenLayout, self).__init__(*args, **kwargs)
self.add_widget(self.InitiateGraph())
def InitiateGraph(self):
...
class TestApp(App):
def build(self):
return ScreenLayout()
Test = TestApp()
Test.run()
Kivy代码:
<ScreenLayout>:
rows: 3
BoxLayout:
BoxLayout:
有办法做到这一点吗?
答案 0 :(得分:0)
有几种方法可以做到这一点。
您可以使用 @Get @Options
public String represent() {
GetWebAccessLogAction getWebAccessLogAction = new GetWebAccessLogAction(new WebAccessLogDAO());
JSONArray webAccessLogs = getWebAccessLogAction.getWebAccessLogs();
return webAccessLogs.toString();
}
参数index
将小部件放在ScreenLayout子项中的特定位置。但这很少是好方法,因为当你因其他原因更新布局时容易中断。
更好的方法是使用带有id的容器小部件,这样您就可以轻松地引用它并在其中添加小部件。
add_widget
然后
<ScreenLayout>:
rows: 3
BoxLayout:
id: graph_container
BoxLayout:
BoxLayout: