こちらの続きです。
スクロールバーを使いたい1 - C#ATIA
columnの中にD&Dのコントロールを配置します。
ft.Draggableを他のコントロールのcontentに入れてしまうと、
D&D出来なかった事が度々あったのでそちらの確認です。
CharacterクラスとDragAndDropItemクラスはこちらをそのまま
使用しています。
D&Dで入れ替わるリストビュー4 - C#ATIA
import flet as ft def main(page: ft.Page): groupName = "DDtest" left_column = ft.Column( [ft.Text("いそのグループ", color=ft.colors.RED_400)], scroll=ft.ScrollMode.AUTO, ) left_container = ft.Container( left_column, expand=True, margin=10, padding=10, border_radius=10, alignment=ft.alignment.top_center, ) isonoGrp = [ Character("さざえ"), Character("かつお"), Character("わかめ"), Character("たらお"), Character("浪平"), Character("フネ"), Character("マスオ"), Character("ノリスケ"), Character("タイ子"), Character("中島"), Character("穴子"), ] [left_column.controls.append(DragAndDropItem(groupName, c)) for c in isonoGrp] center_column = ft.Column( [ft.Text("さくらグループ", color=ft.colors.RED_400)], scroll=ft.ScrollMode.AUTO, ) center_container = ft.Container( center_column, expand=True, margin=10, padding=10, border_radius=10, alignment=ft.alignment.top_center, ) sakuraGrp = [ Character("まるこ", True), Character("たまえ", True), Character("はまじ", True), Character("みぎわ", True), Character("友蔵", True), Character("永沢", True), Character("ひろし", True), Character("すみれ", True), Character("さきこ", True), ] [center_column.controls.append(DragAndDropItem(groupName, c)) for c in sakuraGrp] right_column = ft.Column( [ft.Text("どらグループ", color=ft.colors.RED_400)], scroll=ft.ScrollMode.AUTO, ) right_container = ft.Container( right_column, expand=True, margin=10, padding=10, border_radius=10, alignment=ft.alignment.top_center, ) doraGrp = [ Character("ドラえもん"), Character("のび太"), Character("しずか"), Character("ジャイアン"), Character("スネ夫"), Character("出木杉"), Character("ジャイ子"), Character("ドラミ"), Character("セワシ"), ] [right_column.controls.append(DragAndDropItem(groupName, c)) for c in doraGrp] row = ft.Row([left_container, center_container, right_container], expand=True) page.add(row) ft.app(target=main)
ウィンドウを小さくし、それぞれを動かしてもOKでした。
ドラッグ&ドロップも大丈夫です。
無事、マスオがさきこに襲い掛かっています。
後が怖いですね。