Flet窗口宽高设置及不可调整属性在运行时失效的问题求助
Flet窗口宽高设置及不可调整属性在运行时失效的问题求助
我已经在Windows电脑上安装了Flet,用PyCharm当编辑器。不管是在编辑器里运行还是用CMD跑Python脚本,代码里定义的窗口宽高都不生效。环境变量我也配置好了,用的是当前最新版的Flet。
下面是运行时的效果截图:
而且明明我设置了窗口不可调整大小,运行的时候还是能拖动改变窗口尺寸,完全搞不懂为什么这些配置代码在运行时被忽略了,求各位大佬帮忙看看!
我的代码如下:
import flet as ft def main(page: ft.Page): # Set window properties page.title = "My Flet App" page.window_width = 400 # Width in pixels page.window_height = 700 # Height in pixels page.window_resizable = False # Fix the window size #page.bgcolor = ft.Colors.WHITE # Use the updated Colors enum page.update() # Apply settings immediately # --- Define pages (content for each page) --- def home_page(): return ft.Container( content=ft.Text("Home Page Content", size=20), alignment=ft.alignment.center, expand=True, ) def daily_agenda_planner(): return ft.Container( content=ft.Text("Daily Agenda Planner Content", size=20), alignment=ft.alignment.center, expand=True, ) # Dictionary holding our pages frames = { "HomePage": home_page(), "DailyAgendaPlanner": daily_agenda_planner(), } # --- Current Page Container --- current_page = ft.Container(content=frames["HomePage"], expand=True) # Function to switch between pages def show_frame(page_name: str): current_page.content = frames[page_name] page.update() # --- Navigation Bar --- def create_nav_button(icon, tooltip, action): return ft.IconButton( icon=icon, icon_size=30, tooltip=tooltip, on_click=action, ) # Navigation button actions def on_home_click(e): show_frame("HomePage") def on_planner_click(e): show_frame("DailyAgendaPlanner") def on_contacts_click(e): print("Contacts button clicked!") def on_map_click(e): print("Nav button clicked!") def on_refresh_click(e): print("Refresh button clicked!") # Create nav bar nav_bar = ft.Row( controls=[ create_nav_button(ft.Icons.HOME, "Home", on_home_click), create_nav_button(ft.Icons.CALENDAR_TODAY, "Planner", on_planner_click), create_nav_button(ft.Icons.CONTACTS, "Contacts", on_contacts_click), create_nav_button(ft.Icons.MAP_ROUNDED, "Map", on_map_click), create_nav_button(ft.Icons.REFRESH, "Refresh", on_refresh_click), ], alignment=ft.MainAxisAlignment.CENTER, spacing=20, ) # Wrap nav bar in a container for padding nav_bar_container = ft.Container( content=nav_bar, padding=10, ) # --- Main Layout --- main_layout = ft.Column( controls=[ current_page, # Expands to fill available space. nav_bar_container, # Navigation bar at the bottom. ], expand=True, alignment=ft.MainAxisAlignment.SPACE_BETWEEN, ) page.add(main_layout) ft.app(target=main)
备注:内容来源于stack exchange,提问作者Rubbish Ambush




