在我的Flex 4應用程序中,我希望所有的警報框都是特定的寬度和高度,我如何在CSS中指定它?我想避免每次我想要顯示警報時指定寬度和高度,這就是爲什麼我想在CSS中設置它,但看起來沒有辦法...... 像這樣的東西不會工作:如何在css中指定flex彈出警告框的高度和寬度?
mx|Alert
{
height: 100;
width: 300;
}
在我的Flex 4應用程序中,我希望所有的警報框都是特定的寬度和高度,我如何在CSS中指定它?我想避免每次我想要顯示警報時指定寬度和高度,這就是爲什麼我想在CSS中設置它,但看起來沒有辦法...... 像這樣的東西不會工作:如何在css中指定flex彈出警告框的高度和寬度?
mx|Alert
{
height: 100;
width: 300;
}
CSS只能用於設置組件的Style屬性。對於mx:Alert,沒有基於維度的樣式屬性,您可以看到here - 雖然有一個用於調整名爲「headerHeight」的標頭的高度。
您可以嘗試擴展mx:Alert類併爲其提供新的樣式屬性,以允許您通過CSS更改尺寸。或者你可以擴展這個類,並在其構造函數中給它默認的尺寸。
你不能開箱即用,但可以通過擴展警報並在updateDisplayList
中添加自己的邏輯來檢查樣式並適當更改屬性。
但一般不推薦。只需使用提供給您的屬性。
你可以做到這一點使用樣式+這樣的代碼
定義樣式屬性作爲
Alert {
height:300;
weight:300;
}
注:高度和重量警覺的不默認樣式
在代碼將它們作爲
var alert:Alert = Alert.show("Hello World");
alert.explicitHeight = Number(alert.getStyle("height"));
alert.explicitWidth = Number(alert.getStyle("weight"));
工作實例Flex3的是
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
creationComplete="{show()}">
<mx:Style>
Alert {
height:300;
weight:300;
}
</mx:Style>
<mx:Script>
<![CDATA[
import mx.controls.Alert;
private function show():void
{
var alert:Alert = Alert.show("Hello World");
alert.explicitHeight = Number(alert.getStyle("height"));
alert.explicitWidth = Number(alert.getStyle("weight"));
}
]]>
</mx:Script>
</mx:Application>
說明
由於警報控制默認不支持高度和重量風格,所以示例使用它們僅用於控股用戶定義值作爲變量。
在常規顯示警報/彈出在屏幕上靜態方法顯示類警報的被使用,其返回實例/對象創建的 /活性警報/彈出,使用這種參考其屬性可以在運行時如上例所示操作,即explicitHeight和explicitWidth。
希望幫助