在软件中拥有多个布局的最正确方法是什么



在beeware示例教程中,有一些示例代码可以显示单个布局。如何创建多个布局并在它们之间切换。

class HelloWorld(toga.App):
def startup(self):
main_box = toga.Box(style=Pack(direction=COLUMN))
name_label = toga.Label(
'Your name: ',
style=Pack(padding=(0, 5))
)
self.name_input = toga.TextInput(style=Pack(flex=1))
name_box = toga.Box(style=Pack(direction=ROW, padding=5))
name_box.add(name_label)
name_box.add(self.name_input)
button = toga.Button(
'Say Hello!',
on_press=self.say_hello,
style=Pack(padding=5)
)
main_box.add(name_box)
main_box.add(button)
self.main_window = toga.MainWindow(title=self.formal_name)
self.main_window.content = main_box
self.main_window.show()
def say_hello(self, widget):
print("Hello", self.name_input.value)

以下是示例应用程序。如果我想有两个应用程序布局/屏幕,我会在启动时为两者放置所有对象吗。我如何"删除"所有现有元素并创建新元素来代表一个新的布局,优雅地使用toga/beeware?

要从方框布局中删除元素(比如你想从"main_box"中删除"button",

main_box.remove(button)

要删除所有元素,请对所有元素执行上述操作。

相关内容

最新更新