Python初心者です

実現したいこと

Python勉強中です。
FletのExpansionTileで他のタイルをクリックした時に開いているタイルを閉じるようにしたいのですができません。

発生している問題・分からないこと

Python、Fletでタイルを展開した時、開いている他のタイルを閉じたいが閉じられない。

該当のソースコード

Python

1import flet as ft 2 3 4def main(page: ft.Page):5 page.spacing = 06 page.theme_mode = ft.ThemeMode.LIGHT 7 page.padding = ft.padding.only(top=0)8 9 def handle_expansion_tile_change(e):10 page.show_snack_bar(11 ft.SnackBar(ft.Text(f"ExpansionTile was {'expanded' if e.data=='true' else 'collapsed'}"), duration=1000)12 )13 if e.control.trailing:14 e.control.trailing.name = (15 ft.icons.ARROW_DROP_DOWN 16 if e.control.trailing.name == ft.icons.ARROW_DROP_DOWN_CIRCLE 17 else ft.icons.ARROW_DROP_DOWN_CIRCLE 18 )19 page.update()20 21 page.add(22 ft.ExpansionTile(23 title=ft.Text("ExpansionTile 1"),24 subtitle=ft.Text("Trailing expansion arrow icon"),25 affinity=ft.TileAffinity.PLATFORM,26 maintain_state=True,27 collapsed_text_color=ft.colors.RED,28 text_color=ft.colors.RED,29 controls=[ft.ListTile(title=ft.Text("This is sub-tile number 1"))],30 ),31 ft.ExpansionTile(32 title=ft.Text("ExpansionTile 2"),33 subtitle=ft.Text("Custom expansion arrow icon"),34 trailing=ft.Icon(ft.icons.ARROW_DROP_DOWN),35 collapsed_text_color=ft.colors.GREEN,36 text_color=ft.colors.GREEN,37 on_change=handle_expansion_tile_change,38 controls=[ft.ListTile(title=ft.Text("This is sub-tile number 2"))],39 ),40 ft.ExpansionTile(41 title=ft.Text("ExpansionTile 3"),42 subtitle=ft.Text("Leading expansion arrow icon"),43 affinity=ft.TileAffinity.LEADING,44 initially_expanded=True,45 collapsed_text_color=ft.colors.BLUE,46 text_color=ft.colors.BLUE,47 controls=[48 ft.ListTile(title=ft.Text("This is sub-tile number 3")),49 ft.ListTile(title=ft.Text("This is sub-tile number 4")),50 ft.ListTile(title=ft.Text("This is sub-tile number 5")),51 ],52 ),53 )54 55 56ft.app(target=main)

試したこと・調べたこと

上記の詳細・結果

チャットGPTに聞いた結果が上記でなかなか実装できません。

補足

特になし

コメントを投稿

0 コメント