需要在 FLEX 应用程序中使用自定义组件的示例 [英] Need the example to use custom component in FLEX application
本文介绍了需要在 FLEX 应用程序中使用自定义组件的示例的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想知道如何创建自定义组件以及如何在 FLEX 应用程序中使用它.给我一个简单的例子,我有一点知识,所以我可以理解你是否给我代码.我正在使用 FLEX 3.0
I want to know that how to create a CustomComponent and how to use that in FLEX Application. Give me just a simple example, i have little bit of knowledge is there so i can understand if u just give me the code. I am using FLEX 3.0
提前致谢.
推荐答案
很高兴再次见到你.
格式化 Stepper.as
Formatted Stepper.as
package component
{
import flash.events.Event;
import flash.events.FocusEvent;
import flash.events.MouseEvent;
import mx.controls.NumericStepper;
import mx.core.mx_internal;
import mx.events.FlexEvent;
import mx.formatters.Formatter;
use namespace mx_internal;
public class FormattedStepper extends NumericStepper {
// formatter
private var _formatter:Formatter;
public function FormattedStepper() {
super();
}
override protected function createChildren():void {
super.createChildren();
// un-restrict text input and set initial format
mx_internal::inputField.restrict = null;
doFormat();
// event listeners
addEventListener(FlexEvent.VALUE_COMMIT, doFormat);
addEventListener(FocusEvent.FOCUS_OUT, doFormat);
addEventListener(MouseEvent.CLICK, doFormat);
addEventListener(FlexEvent.DATA_CHANGE, doFormat);
addEventListener(MouseEvent.MOUSE_DOWN, doFormat);
mx_internal::nextButton.addEventListener(MouseEvent.CLICK, doFormat);
mx_internal::nextButton.addEventListener(MouseEvent.MOUSE_DOWN, doFormat);
mx_internal::prevButton.addEventListener(MouseEvent.CLICK, doFormat);
mx_internal::prevButton.addEventListener(MouseEvent.MOUSE_DOWN, doFormat);
mx_internal::inputField.addEventListener(MouseEvent.CLICK, unFormat);
}
private function doFormat(event:Event = null):void
{
if ((_formatter != null) && (mx_internal::inputField != null) && (mx_internal::inputField.text != null))
{
mx_internal::inputField.text = _formatter.format(value);
}
}
private function unFormat(event:Event = null):void
{
if ((_formatter != null) && (mx_internal::inputField != null) && (mx_internal::inputField.text != null))
{
mx_internal::inputField.text = String(value);
}
}
public function set formatter(formatter:Formatter):void {
_formatter = formatter;
doFormat();
}
}
}
测试.mxml
<mx:NumberFormatter id="numberFormatter" precision="2" useNegativeSign="true" rounding="none"/>
<mx:FormItem id="formitemLowerTolerance" label="Lower Tolerance:" labelStyleName="labelFormStyle" direction="horizontal">
<component:FormattedStepper id="numstepLowerTolerance" width="150" formatter="{numberFormatter}"/>
<mx:Label id="lblLower" text="%"/>
</mx:FormItem>
这篇关于需要在 FLEX 应用程序中使用自定义组件的示例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文