【问题标题】:Flex - disappearing buttonFlex - 消失按钮
【发布时间】:2013-08-29 11:07:27
【问题描述】:

我在 Flex 中遇到了一个奇怪的问题。我有一个带有 7 个按钮的 ButtonBar,并且总是第五个是不可见的。即使我切换按钮的位置,我也总是看不到第五个按钮的位置。

这是我的代码:

<s:HGroup x="6" y="6" visible="{entityId > 0}">     
                <mx:ButtonBar height="20" x="10" horizontalGap="4" itemClick="onButtonBarClickHandler(event)" id="buttonBar">
                    <mx:dataProvider>
                        <s:ArrayList>                           
                            <fx:Object label="xxx" action="AddItem" icon="{_addIcon}" />
                            <fx:Object label="zzz" action="DeleteItem" icon="{_deleteIcon}" enabled="{_dg.selectedItem as TemplateFile != null}" />
                            <fx:Object label="yyy" action="Generate" enabled="{_dg.selectedItem.IsTemplate}" />
                            <fx:Object label="aaa" action="PublishSharePoint" enabled="{_dg.selectedItem.IsTemplate}" />
                            <fx:Object label="bbb" action="SetDefault"/>
                            <fx:Object label="Download document" action="DownloadDocument"/>
                            <fx:Object label="Show Tags" action="ShowTags"/>
                        </s:ArrayList>
                    </mx:dataProvider>
                </mx:ButtonBar>

            </s:HGroup>

你知道这里出了什么问题吗?

【问题讨论】:

  • 我已经复制了您的代码并补充了缺失的代码。我无法复制它!
  • 我刚刚注意到我还有一个弹出窗口,它也显示此视图,并且我可以看到所有按钮。我真的不知道为什么它在我的主屏幕上不起作用。
  • 在这种情况下,您发布的代码不足以回答您的问题。
  • 不是解决方案,但您的代码有一种不好的“气味”。通常,在确定是否应启用组件时,是委托给 Presenter/Controller/Supervisor 模型的功能。
  • 您可能希望显示包含上述HGroup 的代码(不是在弹出窗口中,而是在缺少按钮的主应用程序中)。屏幕截图也可能有用:缺少按钮的位置是否有空白区域,或者按钮栏是否仅包含 1 个按钮?最后,您可能想要切换到使用 Spark ButtonBar 组件而不是 MX(使用:&lt;s:ButtonBar&gt; 而不是 &lt;mx:ButtonBar&gt;

标签: apache-flex flex4 flash-builder


【解决方案1】:

试图重现它,但没有成功 - 它们都是可见的。 我的猜测是你有一些代码导致它变得不可见。

【讨论】:

  • 是的,我忘记了这个问题。确实有一些代码在通过特定链接打开页面时隐藏了第五个按钮。抱歉,给你们添麻烦了:)
猜你喜欢
  • 1970-01-01
  • 2011-04-01
  • 1970-01-01
  • 2012-12-29
  • 1970-01-01
  • 1970-01-01
  • 2018-03-22
  • 2011-06-09
  • 2012-05-11
相关资源
最近更新 更多