EventArgExtend.as
package myeventhelper
{
public class EventArgExtend
{
public function EventArgExtend()
{
}
public static function create(f:Function,...arg):Function //addEventListener注册事件进行传递参数的方法
{ //EventArgExtend.create(comB.onGetParentTotal,this)
var F:Boolean = false; //让参数进行并且只一次合并
var _f:Function = function(e:*,..._arg)
{
_arg = arg;
if(!F)
{
F = true;
_arg.unshift(e); //向数组的开始部位加入
}
f.apply(null,_arg); //把参数都放到一个数组里,再传进去;
}
return _f;
}
public static function toString():String
{
return "Class JEventDelegate";
}
}
}
MyEventDispatcher.as 自定义事件发送者类
package myeventhelper
{
import flash.event ......
as 不允许overload...即对于同一个函数名不能有不同的参数列表和返回值
类中的geter 和 setter 与其他的方法一样,除了
1.get函数没有参数,并且必须有返回值,并且必须有get关键字
2.set函数必须有参数并且没有返回值,并且必须有set关键字
Java代码
public function get sampleProperty( ):String {
return _sampleProperty;
}
public function set sampleProperty(value:String):void {
_sampleProperty = value;
}
public function get sampleProperty( ):String {
return _sampleProperty;
}
public function set sampleProperty(value:String):void {
_sampleProperty = value;
}
Array对象可以放入不同类型的实例.
Object class 是动态的,这意味着你可以在Object的实例中添加任意属性(不知道有没有方法).
如果要对类中的方法override,那么函数名,参数列表,返回值,以及访问权限都必须与目标方法相同...
Interface 没有属性,只定义方法原型,并且不需要权限修饰符(默认 ......
component就是一个AS class 或者是MXML component文件在manifest文件中映射的标签.分可视和不可视
可视化component包括Containers 和 UI controls
Containers(Appliction, Panel...)
UI controls(Button, Label)
可以通过3种方式设置component的属性
1.tag attributers
Java代码
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
</mx:Application>
中的layout="absolute"
2.nested tags
Java代码
<mx:Button id="exampleButton">
<mx:label>Example Button</mx:label>
</mx:Button>
<mx:Button id="exampleButton">
<mx:label>Example Button</mx:label>
</mx:Button>
更典型的应用
Java代码
<mx:ComboBox id="exampleComboBox">
<mx:dataProvider>
&n ......
Flex Chart 虽然有提供完整的试用功能
不过编译完成的图表会加上水印
“Flex Data Visualization Trial”的字样。
既然是 AS,那事情就简单了
只要在 Flex Project 內加上以下 Class:
一定要创建mx.charts.chartClasses,覆盖FLEX自带的ChartLicenseHandler
package mx.charts.chartClasses {
public class ChartsLicenseHandler {
}
}
然后在 MXML 內明确引用该 Class,或是用 Metadata Tag 强迫编译
这样就可以去除浮水印了~!
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml ">
<mx:Metadata>
[Frame(extraClass="mx.charts.chartClasses.ChartsLicenseHandler")]
</mx:Metadata>
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
private var expensesAC:ArrayCollection = new ArrayCollection( [
{ Month: "Jan", Profit: -200, Expenses: 1500, Amou ......
XML文件的解析--libxml库函数解释[转]
libxml(一)
摘要
Libxml是一个有免费许可的用于处理XML、可以轻松跨越多个平台的C语言库。这个指南提供它的基本函数的例子。
绪论
Libxml是一个实现读、创建及操纵XML数据功能的C语言库。这个指南提供例子代码并给出它基本功能的解释。在这个项目的主页上有Libxml及更多关于它可用的资料。包含有完整的API文档。这个指南并不能替代这些完整的文档,但是阐明功能需要使用库来完成基本操作。
这个指南基于一个简单的XML应用,它使用我写的一篇文章生成,它包含有元数据和文章的主体。
本指南中的例子代码示范如何做到:
• 解析文档
• 取得指定元素的文本
• 添加一个元素及它的内容
• 添加一个属性
• 取得一个属性的值
例子的完整代码包含在附录中
数据类型
Libxml定义了许多数据类型,我们将反复碰到它们,它隐藏了杂乱的来源 ......
前天写一个小程序, 突然发现其实偶的C学的不怎么样啊,好多函数都不记得,在网上搜到的都是些乱七八糟的,没有原型,用起来不放心,用E文搜,搜到真正的Bible——
The GNU C Library Manual
这里面太全了,只是有一点不太好,E文的,读起来有点慢,感觉有点浪费时间
用C写了段小程序把一个五笔码文本文档转为SQLite3格式的数据库
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <regex.h>
#include <sqlite3.h>
int main(int argc, char** argv)
{
sqlite3 *db = NULL;
char *zErrMsg = 0;
int rc = 0;
rc = sqlite3_open("wubi.db",&db);
if( rc )
{
fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
sqlite3_close(db);
exit(1);
}
char *sql, insert[256];
sql = "CREATE TABLE word (cn VARCHAR(3) NOT NULL, first VARCHAR(4) NOT NULL, sec VARCHAR(4), pri SMALLINT DEFAULT 0)";
sqlite3_exec( db, sql, 0, 0, &zErrMsg );
sql = "CREATE TABLE wordgroup (cn VARCHAR(12) NOT NULL, first VARCHAR(4) NOT NULL, ind ......