- 浏览: 68488 次
- 性别:
- 来自: 北京
最新评论
-
truelove12358:
坑爹啊楼主,文件名与包名、类名不一致,导致一直报坑爹的1 ...
Flex4 用LineChart实现实时曲线图,并在其中添加自定义的虚线水平线 -
pr0608:
在你的皮肤上改了一下,变成透明无边框的皮肤了!终于搞定了 b ...
flex 圆形按钮皮肤的制作 -
天马行空洞:
这个实例很好使用。我也提个建议,我用的时候DashedLine ...
Flex4 用LineChart实现实时曲线图,并在其中添加自定义的虚线水平线 -
neusoft_jerry:
按照楼主的办法,问题解决了。谢谢!同时,回答楼主最后的体温,到 ...
flex 4 的Panel设置右键菜单的问题 -
lipbb:
java_stream 写道表示没图片……自己找几张图片放过去 ...
flex4 为垂直滚动条VScrollBar换肤
文章列表
private function test():void
{
var request:URLRequest = new URLRequest();
var str:String = "从前有座山,山上有座庙,庙里有个老和尚";
var url:String = "http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&text=" + str; // baidu
url = "http://translate.google.cn/translate_tts? ...
将数据库里查出来的列表结构转为树形结构的ArrayCollection,需要数据有id字段(可以不叫id),parent项(对应父节点id),有children项(实现ITreeData接口)。
示例:
var ac:ArrayCollection = new ArrayCollection();
var d1:Department = new Department();
d1.id = "1";
d1.name = "校";
var d2:Department = new Department();
d2.id = "2&quo ...
在github上放了个项目 https://github.com/lipbb/FlexSamples
主要是把平时做的各种控件的测试放上去,有兴趣的可以看一下
见附件
需要注意的几点:
1. html中,嵌入swf时有allowscriptaccess参数,可以设置为always/never/sameDomain,用于控制是否允许flex(flash)与js通信。
2. flex里被addcallback的方法,需要是public。
3. 在js调用flex时需要注意swf是否已经加载。
为垂直滚动条换肤是一件比较麻烦的事情。且让我们一步一步来实现。
首先,由于它只是Scroller的一部分,要直接给它设置样式需要在css文件里这样写:
s|Scroller s|VScrollBar
{
skinClass:ClassReference("com.views.skins.VScrollBarSkin");
fixedThumbSize:true;
}
这里设置fixedThumbSize为true是因为滑块使用了一个固定的图片,如果false会导致内部计算错误。
然后,我们看下皮肤具体应该怎么写,首先打开spark.skins.spa ...
要做一个圆形按钮,在flex4里最直接的方法就是为button写一个皮肤。先看下样子:
下面是皮肤的代码:
<?xml version="1.0" encoding="utf-8"?>
<!--
round button
-->
<s:SparkButtonSkin xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark" ...
先来段代码
//测试
var xml1:XML =
<menu>
<menuitem code="a" lv="1"/>
<menuitem code="b" lv="2"/>
<menuitem code="c" lv="3"/>
<menuitem code="d" lv="2" /& ...
一般说来分为两种情况:前台分页和后台分页。
前台分页是指把数据一次全传过来,根据每页条数及页码来从中取出相应的数据并赋值给dg数据源。
后台分页是指前台传递每页条数及页码(有可能还需要同时传查询条件)给后台,后台只返回该页的数据,直接赋值给dg数据源。
以上是数据的处理。除此之外,你要自己做的是导航的按钮(上一页,下一页,跳转到某页等)。最好做成一个单独的控件,而且跟datagrid解耦:只要加载数据的时候把总页数以及当前页等传给它就行了,在切换页的时候,它也只管发出事件,而真正的翻页操作由外面的父窗口监听页码改变事件,并对数据做相应操作。
附一个示例供参考。
flex 自定义验证器(Validator),先看下示例(有点大,500多K,请耐心等待加载 ) 好像显示不出来flash了?
直接访问 这里
代码如下:
ValidatorDate.as
package utils
{
import mx.controls.DateField;
import mx.validators.ValidationResult;
import mx.validators.Validator;
/**
* 用于验证起始时间必须小于结束时间。<br>
* 使用时必须指定 startDateField 与 endD ...
在flex4的s:Panel中添加右键菜单,下面的this是panel
cm = new ContextMenu();
cm.hideBuiltInItems();
var item:ContextMenuItem;
item = new ContextMenuItem("asdfadsf");
cm.customItems.push(item);
this.contextMenu = cm;
看起来没有任何问题,跟API中示例的没有区别,但是菜单没有任何变化。
搜 ...
请参考flash.media.SoundMixer类的computeSpectrum()方法
api里有示例!
ArrayCollection浅复制没什么好说的。
深层复制一般网上的方法是通过ObjectUtils的clone或者copy方法(用byteArray实现)
newAC = ObjectUtils.clone(oldAC) as ArrayCollection
但这里有一个问题,当ac里面放的不是动态类而是密封类时,数据虽然复制了,但类型信息丢失了。
实现方法:通过flash.net.registerClassAlias()方法向Flash Player注册类型信息。
此方法注册该类,以便该类的实例对象都可以从二进制反序列化回原对象。
以下为示例代码
public static func ...
做简单绘图功能时遇到一个诡异的问题,使用flex4 Group作为画板,用其graphics来绘图的时候发现。
一旦调用了g.clear(),再画就没反应了,进一步发现,group不响应mouseDown事件了。
让别人试验,也是同样的结果。
回头来看group的源码发现,在updateDisplayList方法中有如下一段
graphics.clear();
drawBackground();
原来group之所以能响应鼠标,是绘制了一个背景,而直接调用graphics.clear();之后没有重新绘制这个背景,它就不响应了。
...
用 graphics 绘出的矢量图不是 Shape 显示对象,也不在它的容器对象的子对象列表中。它始
终处于容器对象所有子对象的下面。因此可以用来做背景图。
如果要让它处于容器某子项的前面,请做如下操作:
假如容器为A,子项为B、C ……
不要直接用容器A的graphics,而是另建一个shape/sprite S,然后S.graphics.draw...,再将S放到A中并根据需要调整其前后顺序
先看示例:
代码SimpleMessageBox:
<?xml version="1.0" encoding="utf-8"?>
<s:BorderContainer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
w ...