Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 4, 2024 14:11:29

Alitalia60
Зарегистрирован: 2024-01-04
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

Привет все. Я новичок. Изучаю flet и вот в тупике. Есть 2 случая:

1. Windows 10: не работает должным образом свойство expand
https://flet.dev/docs/controls/column#expanding-children

приведенный в документации пример не работает.

 def test(page: ft.Page):
    page.window_height=400
    r = ft.Container(
        content=
        ft.Column([
            ft.Container(bgcolor='yellow', content=ft.Text("Header"), expand=1),
            ft.Container(bgcolor='yellow', content=ft.Text("Body"), expand=2),
            ft.Container(bgcolor='yellow', content=ft.Text("Footer"), expand=1)
        ]),
        border=ft.border.all(3))
    page.add(r)
    page.add(ft.Column([
        ft.Container(expand=True, content=ft.Text("Here is search results")),
        ft.Text("Records found: 10")
    ]))
    page.update()

После запуска вижу в окне только text “Header”
Куда копать, дайте ссылку на ветку, возможно уже обсуждалось

2. Linux / Ubuntu - не могу зафиксировать размеры главного окна, например
 page.window_width = 400
page.window_height = 400

получаю ошибку, которой в Windows нет - там все отрабатывает

Офлайн

#2 Янв. 4, 2024 15:10:54

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

Уберите для теста

  page.add(ft.Column([
        ft.Container(expand=True, content=ft.Text("Here is search results")),
        ft.Text("Records found: 10")
    ]))

Ну а вобще с таким вопросом на форум флета надо бы - тут явно не в питоне вопрос



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#3 Янв. 4, 2024 15:32:41

Alitalia60
Зарегистрирован: 2024-01-04
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

ZerG
Уберите для теста
Изначально не было в тесте, результат тот же

Пытаюсь найти форум по Flet - что-то есть на английском. Наверное непопулярен, а жаль

Офлайн

#4 Янв. 4, 2024 18:18:05

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

Ну у вас в примере какая то угадайка нарисована

Давайте сначала без гениального кода попробуем

 import flexx as ft
def test(page: ft.Page):
    page.window_height = 400
    # Header container with expand=1
    header_container = ft.Container(bgcolor='yellow', content=ft.Text("Header"), expand=1)
    # Body container with expand=2
    body_container = ft.Container(bgcolor='lightblue', content=ft.Text("Body"), expand=2)
    # Footer container with expand=1
    footer_container = ft.Container(bgcolor='lightgreen', content=ft.Text("Footer"), expand=1)
    # Column container with header, body, and footer containers
    column_container = ft.Column([header_container, body_container, footer_container])
    # Border around the column container
    r = ft.Container(content=column_container, border=ft.border.all(3))
    
    # Adding the main container to the page
    page.add(r)
    # Adding additional content
    page.add(ft.Column([
        ft.Container(expand=True, content=ft.Text("Here is search results")),
        ft.Text("Records found: 10")
    ]))
    # Update the page
    page.update()
# Example usage
if __name__ == "__main__":
    app = ft.App(test)
    app.launch()



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#5 Янв. 4, 2024 20:46:49

Alitalia60
Зарегистрирован: 2024-01-04
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

ZerG
Ну у вас в примере какая то угадайка нарисованаДавайте сначала без гениального кода попробуем
Хм, возможно на flexx это и работает
Но я тестирую flet

Пример взят из документации https://flet.dev/docs/controls/column#expanding-children

 import flet as ft
def test(page: ft.Page):
    r = ft.Column([
        ft.Container(expand=1, content=ft.Text("Header")),
        ft.Container(expand=3, content=ft.Text("Body")),
        ft.Container(expand=1, content=ft.Text("Footer"))
    ])
    page.add(r)
if __name__ == '__main__':
    ft.app(target=test)

В этом варианте в окне появляется только Header

Если убрать свойство expand во всех ft.Container то в окне вижу все три текста

Header
Body
Footer

Я где-то неправ? А где?

Отредактировано Alitalia60 (Янв. 4, 2024 21:00:31)

Офлайн

#6 Янв. 4, 2024 20:56:35

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

flet это обертка над flex если flex сработает значит у вас все окей и питоном и ОС
ТОгда надо смотреть в сторону флета



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#7 Янв. 4, 2024 21:01:07

Alitalia60
Зарегистрирован: 2024-01-04
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

ZerG
flet это обертка над flex если flex сработает значит у вас все окей и питоном и ОСТОгда надо смотреть в сторону флета
Сейчас проверю

Офлайн

#8 Янв. 4, 2024 21:09:04

Alitalia60
Зарегистрирован: 2024-01-04
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

ZerG
flet это обертка над flex если flex сработает значит у вас все окей и питоном и ОСТОгда надо смотреть в сторону флета
flexx - другой синтаксис.

Нет там ни Container, ни Text, ни Page

Офлайн

#9 Янв. 4, 2024 21:11:48

Alitalia60
Зарегистрирован: 2024-01-04
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

Alitalia60
А вообще - есть ли форум русскоязычный по фреймворку flet?

Офлайн

#10 Янв. 4, 2024 21:32:24

Alitalia60
Зарегистрирован: 2024-01-04
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Flet framework. Bugs or my inexperience

Alitalia60

В главном окне Page не работает
В контейнере заработало.

 import flet as ft
def test(page: ft.Page):
    page.theme_mode='light'
    cnt=ft.Container(width=200, height=400, border=ft.border.all(3, 'black'))
    r = ft.Column(spacing=10,
                  controls=
        [
        ft.Container(expand=1, content=ft.Text("Header"), bgcolor='gray',border=ft.border.all(5, 'red')),
        ft.Container(expand=3, content=ft.Text("Body"), bgcolor='gray',border=ft.border.all(5, 'red')),
        ft.Container(expand=1, content=ft.Text("Footer"),border=ft.border.all(5, 'red')),
    ])
    cnt.content=r
    page.add(cnt)
if __name__ == '__main__':
    ft.app(target=test)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version