【问题标题】:Flex 4 DataGrid with floating toolbox ItemRenderer带有浮动工具箱 ItemRenderer 的 Flex 4 DataGrid
【发布时间】:2015-05-14 03:24:44
【问题描述】:

在我的项目中,我有一个 DataGrid 组件,其中包含一些信息,并且在最后一列中我需要放置一个浮动工具箱。

这个想法是当用户点击图标的工具框时,它会出现在一个浮动工具框的上方,就像一个包含一些图标以执行不同操作的菜单。

到目前为止,我已经解决了专栏的ItemRenderer 显示调度员工具箱图标,但显示上部浮动工具箱是我仍然无法解决的问题。我尝试制作一个自定义组件(它是一个 Canvas,其中包含一个包含操作图标的 HBox)来保存工具箱的图标并通过菜单控件 (mx.control.Menu) 显示它,如下所示:

    private function createAndShow():void {
        var myCustomMenu:CustomContextMenu = new CustomContextMenu();
        var myMenu:Menu = Menu.createMenu(this, myCustomMenu, false);
        myMenu.show(btnToolBox.x + 10, btnToolBox.y + 10);
    }

但是这种方法在页面的左侧和顶部显示了一个奇怪的容器,而不是在给定的点(即(btnToolBox.x + 10, btnToolBox.y + 10))显示它。

那么,有人可以帮我解决这个问题吗?

我正在互联网上搜索一些示例,但是,我找不到任何可以帮助我完成这种情况的东西,所以,如果有人知道解决这个问题的方法,或者至少可以以某种方式指出我,任何建议都会感激不尽。

【问题讨论】:

    标签: actionscript-3 apache-flex datagrid itemrenderer toolbox


    【解决方案1】:

    终于,经过长时间的研究,我找到了答案。我创建了一个使用 PopUpAnchor 的自定义组件,解决方案如下所示

    <s:PopUpAnchor id="hDropDown" x="{btnToolBox.x-options1.width+30}" y="{btnToolBox.y-6}" includeInLayout="false" 
                   showEffect="{showEffects}" hideEffect="{hideEffects}">
        <s:BorderContainer minHeight="0" id="options1" mouseDownOutside="{hDropDown.displayPopUp=false}" 
                           cornerRadius="2" borderWeight="1" borderColor="gray" backgroundColor="black">
            <s:layout>
                <s:HorizontalLayout gap="5" paddingLeft="5" paddingRight="5" paddingTop="5" paddingBottom="5" />
            </s:layout>
        </s:BorderContainer>
    </s:PopUpAnchor>
    

    【讨论】:

      猜你喜欢
      • 2012-01-21
      • 1970-01-01
      • 2011-05-02
      • 2010-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-01
      • 1970-01-01
      相关资源
      最近更新 更多