FlexLib Windowsshade 和 Flex 4

发布于 2024-12-07 08:50:12 字数 374 浏览 1 评论 0原文

我正在尝试在 Flex 4 中构建一个可折叠面板。我想我会使用这样的东西:

<s:Panel
    width="100%">

    <s:controlBarContent>

            <flexlib:WindowShade
                width="100% />

    </s:controlBarContent>

</s:Panel>

但这会引发错误:在非构造函数上尝试实例化。我获取了 Flex 4 的 Flexlib zip,但仍然收到该错误。

还有另一种方法可以在控制栏中创建可折叠面板吗?

感谢您的任何提示!

I'm trying to build a collapsible panel in Flex 4. I thought I'd use s/thing like this:

<s:Panel
    width="100%">

    <s:controlBarContent>

            <flexlib:WindowShade
                width="100% />

    </s:controlBarContent>

</s:Panel>

But that throws an error: Instantiation attempted on a non-constructor. I grabbed the flexlib zip for flex 4 but I'm still getting that error.

Is there another way to create a collapsible panel in a control bar?

Thank you for any tips!

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

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

发布评论

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

评论(1

渔村楼浪 2024-12-14 08:50:12

您需要为 WindowShade 组件定义标头渲染器或标头类。
查看发生此异常的代码
异常是:

TypeError: Error #1007: Instantiation attempted on a non-constructor.
at flexlib.containers::WindowShade/createOrReplaceHeaderButton()[...\src\flexlib\containers\WindowShade.as:258]

抛出异常的代码是这样的
<代码>

        if(_headerRenderer) {
            _headerButton = _headerRenderer.newInstance() as Button;
        }
        else {
            var headerClass:Class = getStyle("headerClass");
           _headerButton = new headerClass();
        }

<代码>
您需要定义 headerClass 或 headerRenderer。
出于测试目的,我使用了

    <s:Panel
    width="100%">

    <s:controlBarContent>

        <containers:WindowShade headerClass="mx.controls.Button"
            width="100%" />

    </s:controlBarContent>

</s:Panel>

它,它就像一个魅力:)

玩得开心,祝你好运。

You need to define the header renderer or header Class for the WindowShade component.
Looking at their code where this exception occurs
Exception is:

TypeError: Error #1007: Instantiation attempted on a non-constructor.
at flexlib.containers::WindowShade/createOrReplaceHeaderButton()[...\src\flexlib\containers\WindowShade.as:258]

The code that throws exception is this

        if(_headerRenderer) {
            _headerButton = _headerRenderer.newInstance() as Button;
        }
        else {
            var headerClass:Class = getStyle("headerClass");
           _headerButton = new headerClass();
        }


You need to define either a headerClass or a headerRenderer.
For testing purposes i used

    <s:Panel
    width="100%">

    <s:controlBarContent>

        <containers:WindowShade headerClass="mx.controls.Button"
            width="100%" />

    </s:controlBarContent>

</s:Panel>

and it works like a charm :)

Have fun and good luck.

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