The following example shows how you can customize the appearance of a Flex Button control by using an embedded font and removing the Button’s default skin.
Full code after the jump.
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2007/08/28/styling-a-flex-button-control-using-embedded-fonts/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
applicationComplete="init()"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:String id="fileName" />
<mx:String id="fileSize" />
<mx:Script>
<![CDATA[
private function init():void {
var appInfo:LoaderInfo = Application.application.loaderInfo;
/* Just grab the filename from the SWF URL. */
fileName = (appInfo.url).split("/").pop();
/* Convert bytes to kilobytes. */
fileSize = (appInfo.bytesTotal / 1024).toFixed(2);
}
]]>
</mx:Script>
<mx:Style>
@font-face{
src: url("./fonts/base02.ttf");
fontFamily: "Base02";
}
.myButtonStyle {
embedFonts: true;
fontFamily: Base02;
fontWeight: normal;
fontSize: 24;
cornerRadius: 0;
letterSpacing: 4;
textRollOverColor: red;
skin: ClassReference(null);
icon: Embed(source="./assets/iconInstall.png");
}
</mx:Style>
<mx:ApplicationControlBar id="applicationControlBar" dock="true">
<mx:Label id="info" text="{fileName} ({fileSize}kb)" />
</mx:ApplicationControlBar>
<mx:Button id="btn" label="{btn.getStyle('fontFamily')}" styleName="myButtonStyle" />
</mx:Application>
View source is enabled in the following example.
I didn’t include the TrueType font in the source code ZIP. If you want to grab that exact font, head over to the creator’s site @ http://www.stereo-type.net/ and download “Base 02″.
转载:http://blog.flexexamples.com/2007/08/28/styling-a-flex-button-control-using-embedded-fonts/

浙公网安备 33010602011771号