更改标题窗口关闭按钮

时间:2009-10-01 11:04:10

标签: flex actionscript-3 flex3

我正在使用Flex 3.4 SDK。

我需要更改TitleWindow的默认关闭按钮图像。所以我正在做的是定义一个CSS选择器,如下所示:


TitleWindow{
    close-button-skin: Embed('assets/close.png');
    border-color: #FFFFFF;
    corner-radius: 10;  
    closeButtonDisabledSkin: ClassReference(null);
    closeButtonDownSkin: ClassReference(null);
    closeButtonOverSkin: ClassReference(null);
    closeButtonUpSkin: ClassReference(null);
}

问题是:结果图像被完全挤压得无法识别。可能是因为图像尺寸为55x10像素(比默认的按钮方形尺寸宽得多)并且弯曲使其适合该尺寸。

有人知道如何解决这个问题吗?

2 个答案:

答案 0 :(得分:3)

在Panel类的createChildren()方法中,宽度和高度似乎设置为16像素:

closeButton.explicitWidth = closeButton.explicitHeight = 16;

您可以尝试将explicitWidth和explicitHeight设置为窗口中所需的值。不要忘记将closeButton范围扩展到mx_internal,并导入并使用该命名空间。

import mx.core.mx_internal;

use namespace mx_internal;

// in creationComplete for instance
mx_internal::closeButton.explicitWidth = ...;
mx_internal::closeButton.explicitHeight = ...;

答案 1 :(得分:1)

如果您想要更简单,请执行此操作,

导入课程

import mx.core.mx_internal;

将这三行放在creationComplete处理程序

use namespace mx_internal;

closeButton.$width  = 24; //Change the button width to 24 pixels
closeButton.$height = 24; //Change the button height to 24 pixels