C#ATIA

↑タイトル詐欺 主にFusion360API 偶にCATIA V5 VBA(絶賛ネタ切れ中)

コントロールにコンテキストメニューを追加したい2

こちらの続きです。
コントロールにコンテキストメニューを追加したい1 - C#ATIA

コンテキストメニュー代わりにアラートを表示させてみました。

import flet as ft

def main(page: ft.Page):

    def close_dlg(e):
        dlg_modal.open = False
        page.update()

    dlg_modal = ft.AlertDialog(
        actions=[
            ft.Column(
                controls = [
                    ft.TextButton("愛してる?", on_click=close_dlg),
                    ft.TextButton("愛してない?", on_click=close_dlg),
                ],
                expand = True,
            ),
        ],
        actions_alignment=ft.MainAxisAlignment.CENTER,
        shape = ft.RoundedRectangleBorder(
            radius = 10,
        ),
    )

    def on_context_menu(e: ft.TapEvent):
        e.page.dialog = dlg_modal
        dlg_modal.open = True
        e.page.update()

    drag = ft.Draggable(
        group = "test",
        content = ft.Text(
            "右クリックして!",
            size = 20,
        ),
    )

    gd = ft.GestureDetector(
        mouse_cursor = ft.MouseCursor.CONTEXT_MENU,
        on_secondary_tap_up = on_context_menu,
        left = 100,
        top = 100,
        content = drag,
    )

    # page.add(gd) <-これNG
    page.add(ft.Stack([gd]))

ft.app(target=main)

見えにくいのですが、こんな感じです。

中心に表示されてます。こんなの愛せないです。

イベントハンドラで右クリックした際の座標は取得出来る事には
前から気が付いていました。
アラートの表示位置を移動させれば良いかな?と思っていたのですが、
ダメでした。そのようなプロパティが有りません。

他のアラート類も上か下の表示です・・。
Issuesやサンプル探しても、コンテキストメニューっぽいものが見つからず。
ページ重ねて表示とか出来るのかな?