大家好,这是我的第一个问题,:D 我是 python 的新学习者,我正在尝试使用 Flet 制作我的第二个项目 在这个项目中,我试图制作一个网站,所以我开始研究 Flet 文档 我编写了这段代码
from flet import *
from views import views_handler
def main(page: Page):
page.title = "Home"
page.window_height=500
page.window_width=500
page.vertical_alignment= MainAxisAlignment.CENTER
page.window_height= CrossAxisAlignment.CENTER
page.theme_mode = ThemeMode.DARK
def route_change(route):
page.views.clear()
page.views.append(
views_handler(page)[page.route]
)
page.on_route_change = route_change
page.go('/')
app(target=main)
我也制作了 view.py 代码和 Pages 文件夹,问题是我无法将任何页面的任何按钮居中
这是我的 SignUP.py 的代码
from flet import *
from flet import TextField, Checkbox, ElevatedButton, Text,Row,Column
from flet_core.control_event import ControlEvent
class Signuppage(UserControl):
def __init__(self, page):
super().__init__()
self.page = page
def build(self):
self.page.title = "Signup"
self.page.vertical_alignment = MainAxisAlignment.CENTER
self.page.horizontal_alignment = CrossAxisAlignment.CENTER
self.username_signup: TextField =TextField(label="Username", width=200)
self.password_signup : TextField =TextField(label="Password", width=200, password=True)
self.checkbutton : Checkbox= Checkbox(label="I accept ", value=False)
self.signup_button : ElevatedButton= ElevatedButton(text="Sign up", width=200, disabled=True)
self.username_signup.on_change = self.validate
self.password_signup.on_change = self.validate
self.checkbutton.on_change = self.validate
self.signup_button.on_click = self.submit
return Column(
controls=[Container(
content=Column(
controls=[self.username_signup, self.password_signup, self.checkbutton, self.signup_button]),
height=400,
width=400,
border_radius= 50,
bgcolor=colors.GREEN,
),
],
)
def validate(self, e: ControlEvent) -> None:
if all([self.username_signup.value, self.password_signup.value,self.checkbutton.value]):
self.signup_button.disabled = False
else:
self.signup_button.disabled = True
self.update()
def submit(self, e: ControlEvent) -> None:
print(self.username_signup.value, self.password_signup.value)
我尝试查看 flet 文档中的一些示例,并尝试将它们应用到我的代码中,但无论我尝试做什么,它都没有从 Left 移动,唯一让它起作用的就是将边距设置为 30
如果有人可以帮助我学习和解决这个问题并告诉我为什么它没有改变的信息,我会很高兴
看看这个例子,它可能对你有帮助 flet-pythobn 示例