自定义上下文菜单未显示在 MX TextArea 中

发布于 2024-10-31 12:05:44 字数 564 浏览 5 评论 0原文

多年来我一直在努力尝试将我的自定义上下文菜单应用于文本区域,它只会显示默认值(复制、粘贴等...)。

        import mx.events.FlexEvent;

        public var nm:NativeMenu = new NativeMenu();
        public var cm:ContextMenu = new ContextMenu();

        protected function windowedapplication1_creationCompleteHandler(event:FlexEvent):void
        {
            cm.clipboardMenu = true;

            var cmi:ContextMenuItem = new ContextMenuItem("ctest");
            cm.addItem(cmi);

            TA.contextMenu = cm;
        }

给定 TA 是 MXML 中的 mx TextArea

我真的很困惑!

Been tearing my hair out for ages trying to get my custom ContextMenu to apply to a TextArea, It will just display the default (copy, paste ect...).

        import mx.events.FlexEvent;

        public var nm:NativeMenu = new NativeMenu();
        public var cm:ContextMenu = new ContextMenu();

        protected function windowedapplication1_creationCompleteHandler(event:FlexEvent):void
        {
            cm.clipboardMenu = true;

            var cmi:ContextMenuItem = new ContextMenuItem("ctest");
            cm.addItem(cmi);

            TA.contextMenu = cm;
        }

given TA is an mx TextArea in MXML

i'm really stumped!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

雨落星ぅ辰 2024-11-07 12:05:44

放上全套代码给大家看看:

var cm:ContextMenu = new ContextMenu();

var menuitem:ContextMenuItem = new ContextMenuItem("Check Spelling");
menuitem.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, handleContextMenuEvent);
mainMenu.addItem(menuitem);

textArea.contextMenu = mainMenu;
var txt:TextField = textArea.mx_internal::getTextField() as TextField;
txt.contextMenu = mainMenu;

希望对大家有帮助!

Just to put a full set of code for everyone to see:

var cm:ContextMenu = new ContextMenu();

var menuitem:ContextMenuItem = new ContextMenuItem("Check Spelling");
menuitem.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, handleContextMenuEvent);
mainMenu.addItem(menuitem);

textArea.contextMenu = mainMenu;
var txt:TextField = textArea.mx_internal::getTextField() as TextField;
txt.contextMenu = mainMenu;

Hope this helps!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文