[小技巧] 通过监听DataGrid的ListEvent.Change控制button是否可用.

Categories: Flex; Tagged with: ; @ December 28th, 2008 21:01

如下, 在没有点击[默认]是, 后两个button的enable=false;

image

点击一个之后:

image

简单实现方法:

_dataGridStudent.addEventListener(ListEvent.CHANGE, onSlectedChange);

对应监听函数:

		_actionEdit.enabled = _dataGridStudent.selectedItem != null;
		_actionDelete.enabled = _dataGridStudent.selectedItem != null;

这样实现了:
1.无点击时不可用
2.点击且有选择时可用
3. 如点击之后, 按住Ctrl点击, 可取消对其选择, 这时将置按钮于不可用状态.

Flex中生成UUID

Categories: Flex; Tagged with: ; @ December 5th, 2008 9:38

关于UUID的介绍: http://en.wikipedia.org/wiki/Universally_Unique_Identifier

	public function generateUUID():String {
		var uuid:String = UIDUtil.createUID();
		return uuid;
	}

image

[千斤顶之一日一类006]TopLevel:Math

Categories: Flex; Tagged with: ; @ November 7th, 2008 0:05

Math类中包含了常用数学运算的函数与值, 如正弦,PI等. 我那曾经扎实的数学根基竟然经不起时间的考验—似乎什么都记不起来了…API太高估我的实力了, 只给出了一个角度弧度互换的公式…

Math类中最多的函数莫过于正弦余弦,正切余切之类的了,想了半天才想起来一个正弦, 概念想不起来了,只是记得个曲线图….

public function init():void {
trace(Math.abs(-1)); //1
trace(Math.PI); //3.141592653589793
trace(Math.sin(Math.PI/2));//1
trace(Math.asin(1)); //1.5707963267948966

trace(Math.random());

trace(Math.round(2.1)); //四舍五入 2
trace(Math.ceil(2.1)); //首位加一 3
trace(Math.floor(2.1)); //收尾 2
}

注意部分函数的参数不是角度,而是弧度.

角度与弧度的换算:[API还是比较体贴的…]

radians = degrees * Math.PI/180
degrees = radians * 180/Math.PI

[千斤顶之一日一类004_5]Top Level:Class,Date

Categories: Flex; Tagged with: ; @ November 5th, 2008 20:43

昨天没有玩千斤顶, 也没有跑步. 以至于午睡都睡的不踏实. 老刘同学说,你是不是有些累, 于是我开始想, 那是不是改为One Week One Class? W再变成M,再变成Y, 这样下去, 怕是这一辈子也总结不完了吧. 咬咬牙, 乳沟都可以挤出来, 我还挤不出点时间来? 嘿嘿 . 昨天碰巧需要总结Class, 我看这个类也没啥好总结的. 只有一条:

在ActionScript 3.0 中, 在一个AS文件中, package之外, 仍然可以存在类, 但不可以有任何修饰符, 这些类只能被该AS文件中的类调用.

如:

// ActionScript file
package {
    import flash.display.Sprite;

    public class ClassExampl extends Sprite {
        public function ClassExampl() {
            var classToConstruct:Class;
            var classInstance:Object;

            classToConstruct = ClassA;
            classInstance = new classToConstruct();
            trace(classInstance);    // [object ClassA]

            classToConstruct = ClassB;
            classInstance = new classToConstruct();
            trace(classInstance);    // [object ClassB]
        }
    }
}// end fo package
 class ClassA {
}

class ClassB {
}

Class 类就总结这么多吧. 其实也没啥东西了. 下面是Date类:

这Date类就更简单了, 虽然属性与方法看起来都很多, 但都是非常简单的东西.

主要东西整理下, 等下还得去跑个步, 太晚了让家里人操心不好…..:

public function init():void {
	var d:Date = new Date(); //2008年11月5号 20:36:49 .TMD都五号了啊,时间过的真快.....
	trace(d.date); //Date的属性 显示 5
	trace(d.getDate()); //返回1~31的Number, 这里显示: 5
	trace(d.setDate(20)); //把日期该到20号...现在时间变成了2008年11月20号 20:36:49 会返回new time in milliseconds. 这里显示: 1227184609078
	trace(d.getDate());  //20
	trace(d.toDateString()); //Thu Nov 20 2008
	trace(d.toLocaleDateString());//Thu Nov 20 2008
	trace(d.toLocaleString()); //Thu Nov 20 2008 08:36:49 PM 带时间...不是24小时的
	trace(d.toString()); //Thu Nov 20 20:36:49 GMT+0800 2008  带时区
	trace(d.toTimeString()); //20:36:49 GMT+0800 时间与时区
	trace(d.toUTCString()); //Thu Nov 20 12:36:49 2008 UTC
}

[千斤顶之一日一类003]Top Level: Boolean学习

Categories: Flex; Tagged with: ; @ November 4th, 2008 0:09

昨天没有玩千斤顶, 今天也玩不动, 发现今天轮到Boolean了, 比较简单, 咬牙再坚持一下….

Boolean这个类的确很简单. Boolean用于存储逻辑判断的对象, 要么为true, 要么为False.

新建一个Boolean:

可以使用构造函数, 全局函数, 直接赋值.来实现. 如:
var flag:Boolean = true;
var flag:Boolean = new Boolean(true);
var flag:Boolean = Boolean(true);

Constructor Detail

使用给定的参数建立一个Boolean,  如果参数为空, 则该对象被初始化为False. 如果含有参数, 则该方法将按照Boolean()方法的规则将该参数转化并返回一个Boolean. Boolean()函数的转换规则如下:

Input Value Example Return Value
0 Boolean(0) false
NaN Boolean(NaN) false
Number (not 0 or NaN) Boolean(4) true
Empty string Boolean("") false
Non-empty string Boolean("6") true
null Boolean(null) false
undefined Boolean(undefined) false
Instance of Object class Boolean(new Object()) true
No argument Boolean() false

Newer Posts <-> Older Posts



// Proudly powered by Apache, PHP, MySQL, WordPress, Bootstrap, etc,.