start build test

This commit is contained in:
2025-09-12 19:19:56 +05:00
commit d7cf61839b
10 changed files with 1515 additions and 0 deletions

135
app/pages/Main.py Normal file
View File

@@ -0,0 +1,135 @@
import flet as ft
import designer as ds
main_loading=None
class Main_page(ft.View):
def __init__(self, page:ft.Page):
self.page=page
self.file_picker = ft.FilePicker(on_result=self.load_file)
self.directory_picker = ft.FilePicker(on_result=self.load_directory)
self.page.overlay.append(self.file_picker)
self.page.overlay.append(self.directory_picker)
self.selection_mode = ft.RadioGroup(
content=ft.Row([
ft.Radio(value="file", label="Выбрать файл"),
ft.Radio(value="directory", label="Выбрать папку")
]),
value="file",
on_change=self.on_mode_change
)
self.file_url=ds.TextField(
#width=380,
expand=True,
read_only=True
)
self.button_load = ds.Button(on_click=self.clic_button_file, text="Выбрать файл")
super().__init__(
route="/main",
horizontal_alignment=ft.CrossAxisAlignment.CENTER,
vertical_alignment=ft.MainAxisAlignment.CENTER,
#expand=True,
scroll="auto",
controls=[
ft.Row(
controls=[
ft.Container(
border_radius=ft.border_radius.all(10),
bgcolor=ds.colors[4],
height=80,
expand=True,
content=ft.Text("file loading",color=ds.colors[0],size=30),
alignment=ft.alignment.center_left,
)
],
expand=True,
height=100,
),
ft.Row(
expand=True,
height=500,
controls=[
ft.Container(#болшой контейнер
padding=10,
expand=True,
border_radius=ft.border_radius.all(10),
bgcolor=ds.colors[4],
content=ft.Column(
controls=[
ft.Column(
controls=[
ft.Container(#контенер с выбором режима
padding=10,
expand=True,
bgcolor=ds.colors[3],
border_radius=ft.border_radius.all(10),
content=self.selection_mode
),
ft.Container(#контенер с ссылкой на документ
padding=10,
expand=True,
#width=500,
bgcolor=ds.colors[3],
border_radius=ft.border_radius.all(10),
content=ft.Column(
controls=[
self.file_url,
ft.Container(
#width=380,
expand=True,
alignment=ft.alignment.center_right,
content=self.button_load
)
]
)
),
ft.Container(
height=100,
alignment=ft.alignment.center_right,
bgcolor=ds.colors[3],
border_radius=ft.border_radius.all(10)
)
]
),
]
),
)
],
)
],
)
def on_mode_change(self, e):
"""Обработчик изменения режима выбора"""
if self.selection_mode.value == "file":
self.button_load.text = "Выбрать файл"
else:
self.button_load.text = "Выбрать папку"
self.page.update()
def clic_button_file(self,e):
if self.selection_mode.value == "file":
self.file_picker.pick_files(
allow_multiple=False,
allowed_extensions=["xlsx", "xls"]
)
else:
self.directory_picker.get_directory_path()
self.page.update()
def load_file(self,e:ft.FilePickerResultEvent):
if e.files is not None:
for f in e.files:
print(f"Выбранный файл: {f.path}")
self.file_url.value = f.path
self.page.update()
def load_directory(self,e:ft.FilePickerResultEvent):
if e.path is not None:
print(f"Выбранная папка: {e.path}")
self.file_url.value = e.path
self.page.update()