
2009年11月11日
var fixgeometry = function() {
/* Some orientation changes leave the scroll position at something
* that isn't 0,0. This is annoying for user experience. */
scroll(0, 0);
/* Calculate the geometry that our content area should take */
var header = $(".header:visible");
var footer = $(".footer:visible");
var content = $(".content:visible");
var viewport_height = $(window).height();
var content_height = viewport_height - header.outerHeight() - footer.outerHeight();
/* Trim margin/border/padding height */
content_height -= (content.outerHeight() - content.height());
content.height(content_height);
}; /* fixgeometry */
$(document).ready(function() {
$(window).bind("orientationchange resize pageshow", fixgeometry);
});
posted @
2013-01-28 10:59 The Matrix 閱讀(5191) |
評(píng)論 (1) |
編輯 收藏
http://java.dzone.com/articles/hibernate-tuning-queries-using?page=0,0
posted @
2012-05-14 14:28 The Matrix 閱讀(1213) |
評(píng)論 (0) |
編輯 收藏
環(huán)境:
Centos6.2(安裝在Vmware7.0中)
Magento1.6.2
Apache Httpd Server 2.2.15
MySql 5.1.61
PHP5.3.3
安裝過(guò)程:
apache http、mysql、php及相關(guān)擴(kuò)展安裝:
其中apache http、Mysql、php都是利用centos的添加/刪除軟件功能進(jìn)行安裝。同時(shí)使用該功能安裝"php-xml"、"php-gd"、"php-pdo"、"php-mbstring"、"php-mysql"擴(kuò)展。
使用chkconfig配置httpd和mysql為系統(tǒng)服務(wù)。命令如下:
chkconfig httpd on
chkconfig -add mysqld
chkconfig mysqld on
使用chkconfig --list 可以查看所有的服務(wù)配置狀態(tài)
使用service httpd start、service mysqld start啟動(dòng)httpd和mysqld服務(wù)。可以通過(guò)service httpd restart重啟相關(guān)服務(wù)。
此時(shí)訪問(wèn)本機(jī)的http://localhost可以看到apache的歡迎界面,同時(shí)編輯index.php文件,其內(nèi)容如下:
<?php
phpinfo();
?>
并將該文件置于/var/www/html目錄下,訪問(wèn)http://localhost/index.php,此時(shí)應(yīng)該不能看到php版本信息,僅能看到index.php的靜態(tài)文本內(nèi)容。
修改/etc/httpd/conf/httpd.conf文件,修改如下:
DirectoryIndex index.html index.html.var -> DirectoryIndex index.html index.htm index.php
增加:
AddType application/x-httpd-php .php
AddDefaultCharset -> AddDefaultCharset off (解決中文亂碼問(wèn)題)
增加一段VirtualHost描述,如下(在配置文件的最后):
<VirtualHost *:80>
DocumentRoot /var/www/smallfive
ServerName smallfive
ServerAlias smallfive.com *.smallfive.com
</VirtualHost>
此時(shí)訪問(wèn)http://localhost/index.php,應(yīng)該一切正常
設(shè)置數(shù)據(jù)庫(kù):
使用mysqladmin -u root password 'newpassword'設(shè)置mysql數(shù)據(jù)庫(kù)的默認(rèn)密碼
讓數(shù)據(jù)庫(kù)更安全:
mysql -u root -p 進(jìn)入mysql
mysql> DROP DATABASE test; 刪除test數(shù)據(jù)庫(kù)
mysql> DELETE FROM mysql.user WHERE user = ''; 刪除匿名帳戶(hù)
mysql> FLUSH PRIVILEGES; 重載權(quán)限
創(chuàng)建magento數(shù)據(jù)庫(kù)
mysql> CR 訪問(wèn)magento數(shù)據(jù)庫(kù),確保一切正常
配置Magento:
解壓縮magento1.6.2版本至/var/www/smallfive/magento目錄
解壓命令:
EATE DATABASE magento;
mysql> GRANT ALL PRIVILEGES ON magento.* TO 'root'@'localhost' IDENTIFIED BY 'newpassword';
tar zxvf magento1.6.2.tar.gz
此時(shí)訪問(wèn)http://localhost/magento,可根據(jù)magento的設(shè)置進(jìn)行配置
注意如下問(wèn)題:
1、確保當(dāng)前用戶(hù)擁有對(duì)/var/www/smallfive/magento可讀可寫(xiě)權(quán)限
2、還需安裝mcrypt庫(kù),安裝這個(gè)庫(kù)比較繁瑣,mcrypt依賴(lài)于Libmcrypt庫(kù)和mhash庫(kù),我們需要下載Libmcrypt庫(kù)和mhash庫(kù)安裝它們,然后再編譯Mcrypt。
在編譯之前,先做好如下準(zhǔn)備工作:
a、安裝phpize:yum -y install php-devel
b、安裝C++腳本編譯模塊:
yum -y install gcc gcc-g++
yum -y install gcc gcc-c++
安裝mcrypt庫(kù)過(guò)程,如下:
a、下載libmcrypt和mhash庫(kù)
Libmcrypt:http://sourceforge.net/project/showfiles.php?group_id=87941&package_id=91774&release_id=487459
mhash:http://sourceforge.net/project/showfiles.php?group_id=4286&package_id=4300&release_id=645636
b、將上述兩個(gè)下載后,分別解壓,并執(zhí)行如下命令編譯:
./configure
make && make install
c、下載php對(duì)應(yīng)的源代碼,解壓,
進(jìn)入php源代碼的 /ext/mcrypt目錄
執(zhí)行phpize命令
./configure –with-php-config=/usr/bin/php-config
make && make install
d、在php.ini文件中增加如下內(nèi)容:
extension=/usr/lib/php/modules/mcrypt.so
mcrypt.so文件路徑在php-config文件中可以找到
e、service httpd restart
end!
參考文章:
http://www.eexu.com/article.asp?id=1730
http://www.ruiwant.com/centos-6-0%E4%B8%8Bmagento%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE%E6%80%BB%E7%BB%93.html
http://zixun.www.net.cn/qita/2344.html
http://os.qudong.com/Linux/2010/0210/64441.html
posted @
2012-04-04 17:09 The Matrix 閱讀(3129) |
評(píng)論 (1) |
編輯 收藏
有時(shí)在vmware里面安裝的系統(tǒng)或應(yīng)用有License時(shí)間的限制,可以通過(guò)修改虛擬機(jī)時(shí)間的方法來(lái)防止過(guò)期,此時(shí)需在.vmx文件中加入下面的內(nèi)容:
tools.syncTime = "FALSE"time.synchronize.continue = "FALSE"time.synchronize.restore = "FALSE"time.synchronize.resume.disk = "FALSE"time.synchronize.shrink = "FALSE"rtc.startTime = 1183431600 #這是用來(lái)指定虛擬機(jī)啟動(dòng)后的時(shí)間。數(shù)字是自1970年1月1日零時(shí)零分零秒以來(lái)的秒數(shù),可以通過(guò)如下網(wǎng)址將某個(gè)時(shí)間轉(zhuǎn)換為該數(shù)字(Unix時(shí)間戳):http://www.onlineconversion.com/unix_time.htm
注意:同時(shí)還需在虛擬機(jī)操作系統(tǒng)的服務(wù)中,停用“VMware Tools Service”的服務(wù)。
在Windows Server 2003中操作系統(tǒng)自身也有時(shí)間同步功能,需在時(shí)間設(shè)定中停用,同時(shí)停用“Windows Timer”服務(wù)。
posted @
2012-03-02 10:51 The Matrix 閱讀(8679) |
評(píng)論 (0) |
編輯 收藏
主要參見(jiàn):
http://blog.chenlb.com/2011/03/install-apache-php-wordpress-windows.html
在安裝好apache http server后,如果端口不正確,則修改"apache安裝目錄/conf/httpd.conf"文件中的如下信息:
#ServerName localhost:80 -> ServerName localhost:8060
Apache HTTP Server版本:2.2
PHP版本:5.3.8
WordPress版本:3.2.1
posted @
2011-11-27 21:28 The Matrix 閱讀(655) |
評(píng)論 (0) |
編輯 收藏
1. 打開(kāi)工具Oracle SQL Plus 以dba身份登錄sys用戶(hù)
sqlplus /nolog
conn sys@url as sysdba
2. 創(chuàng)建用戶(hù)并指定表空間
使用客戶(hù)端工具或者Web管理控制臺(tái)創(chuàng)建表空間以及用戶(hù)
給用戶(hù)賦予connect、resource、dba權(quán)限
grant connect,resource,dba to username;
注意:給oracle用戶(hù)分配connect、resource角色時(shí),此時(shí)connect 角色中有一個(gè) UNLIMITED TABLESPACE 權(quán)限,也就是username這個(gè)用戶(hù)可以在其他表空間里隨意建表。
revoke unlimited tablespce from username; --撤銷(xiāo)username用戶(hù)在任意表空間建表的權(quán)限
alter user username quota 0 on users; --alter username quota 0 on Users; // 還不是很清楚具體含義???
alter user username quota unlimited on tablespacename; --賦予username用戶(hù)在tablespacename表空間任意建表的權(quán)限;
3. 使用imp工具導(dǎo)入dmp數(shù)據(jù)文件
imp username/password@url file=c:\db.dmp fromuser=username1 touser=username log=c:\log.txt
-------------------------------------------------------------------------------------------------------------
其它命令:
select * from dba_users; --查詢(xún)用戶(hù)
select * from dba_tables; --查詢(xún)表
select * from dba_views; --查詢(xún)視圖
select * from dba_tablespaces; --查詢(xún)表空間
oracle 10g,查詢(xún)表空間使用率
Select * from sys.DBA_TABLESPACE_USAGE_METRICS;
-------------------------------------------------------------------------------------------------------------
drop user username cascade;
ORA-01940:無(wú)法刪除當(dāng)前已連接的用戶(hù)
select username, sid, serial# from v$session where username='username';
alter system kill session'sid,serial#'
posted @
2011-05-31 16:43 The Matrix 閱讀(3896) |
評(píng)論 (0) |
編輯 收藏
環(huán)境:Windows7 professional
1、下載redmine1.1.3.zip、ruby1.8.7、rubygems-1.3.7.zip、mysql 5.0
2、安裝MySQL5.0,cmd窗口下使用mysql -u root -p 登錄MySQL數(shù)據(jù)庫(kù),執(zhí)行如下語(yǔ)句創(chuàng)建redmine數(shù)據(jù)庫(kù)及用戶(hù):
create database redmine character set utf8;
create user 'redmine'@'localhost' identified by 'my_password';
grant all privileges on redmine.* to 'redmine'@'localhost';
注:
使用MySQL5.5在后面進(jìn)行初始數(shù)據(jù)時(shí)Ruby會(huì)提示連接有問(wèn)題
在安裝完MySQL后,先不要進(jìn)行配置,至“MySQL安裝路徑\bin”目錄下,修改MySQLInstanceConfig.exe為“以管理員成分執(zhí)行此程序”,“以兼容模式運(yùn)行該程序”
進(jìn)行數(shù)據(jù)庫(kù)配置時(shí),選擇字符集為utf8
3、運(yùn)行ruby1.8.7安裝包,解壓至d:/ruby187,將d:/ruby187/bin添加至path環(huán)境變量中
安裝后可執(zhí)行 ruby -v查看ruby版本以檢驗(yàn)安裝是否正確
4、解壓rubygems-1.3.7.zip至d:/rubygems-1.3.7
進(jìn)入d:/rubygems-1.3.7目錄,執(zhí)行ruby setup.rb
注:Redmine需要rubygems 1.3.1 - 1.5.x,肯定不能用1.8.2版本
5、執(zhí)行g(shù)em install rails -v=2.3.5 遠(yuǎn)程安裝rails2.3.5版本
gem install mysql
gem install -v=0.4.2 i18n
6、解壓縮redmine1.1.3至d:/redmine1.1.3目錄
進(jìn)入d:/redmine-1.1.3/config目錄,修改database.yml.example文件為database.yml,并修改該文件中的production數(shù)據(jù)庫(kù)連接配置為如下:
production:
adapter: mysql
database: redmine
host: localhost
username: redmine
password: my_password
encoding: utf8
進(jìn)入d:/redmine1.1.3目錄,執(zhí)行
rake config/initializers/session_store.rb
rake db:migrate RAILS_ENV="production"
7、加載默認(rèn)配置數(shù)據(jù)
rake redmine:load_default_data RAILS_ENV="production"
默認(rèn)語(yǔ)言選擇"zh"
8、運(yùn)行
ruby script/server webrick -e production
9、訪問(wèn):http://localhost:3000
使用admin/admin進(jìn)行登入
進(jìn)入設(shè)置,把默認(rèn)語(yǔ)言設(shè)為“簡(jiǎn)體中文”,然后設(shè)置當(dāng)前用戶(hù)的默認(rèn)語(yǔ)言設(shè)為“簡(jiǎn)體中文”,這樣就是中文界面了
-----------------------------------------
繼續(xù),將redmine設(shè)置為windows 7的服務(wù)
1、首先需要配置mysql為windows 7的服務(wù)
2、Ruby提供一個(gè)安裝Ruby程序?yàn)榉?wù)的包:mongrel_service。安裝其實(shí)很簡(jiǎn)單,運(yùn)行:gem install mongrel_service
3、安裝redmine為服務(wù),執(zhí)行mongrel_rails service::install -N RedMine -c C:\redmine-1.1.3 -p 3000 –e production
注意:此處打開(kāi)cmd窗口時(shí),需要輸入cmd后,不是直接按Enter,而是按 Ctrl+Shift+Enter打開(kāi)Cmd窗口,此時(shí)以管理員身份打開(kāi),否則安裝為服務(wù)時(shí)會(huì)提示拒絕訪問(wèn)。
4、安裝服務(wù)后,需檢查服務(wù)-e后的參數(shù)是不是production,如果不是production而是development,則在注冊(cè)表中把參數(shù)手動(dòng)改為production。修改方法是:打開(kāi)“注冊(cè)表編輯器”,展開(kāi)分支“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services”,選擇redmine服務(wù),找到ImagePath項(xiàng),修改保存后在服務(wù)列表中啟動(dòng)服務(wù),并把服務(wù)設(shè)置自動(dòng)啟動(dòng)。
OK!
posted @
2011-05-20 10:25 The Matrix 閱讀(2790) |
評(píng)論 (0) |
編輯 收藏
參見(jiàn)如下鏈接:
posted @
2011-03-25 21:33 The Matrix 閱讀(1205) |
評(píng)論 (0) |
編輯 收藏
沒(méi)仔細(xì)研究,先把項(xiàng)目地址記下:
http://arshaw.com/fullcalendar/
這個(gè)博客中另有幾個(gè)推薦的類(lèi)似項(xiàng)目:
http://hi.baidu.com/freezesoul/blog/item/15c5d73fe4a315c17d1e71ec.html
posted @
2010-11-09 20:37 The Matrix 閱讀(1282) |
評(píng)論 (0) |
編輯 收藏
這幾天在看郎咸平的《誰(shuí)在謀殺中國(guó)經(jīng)濟(jì)》,這本書(shū)我基本看過(guò)一遍了,認(rèn)為全書(shū)的重點(diǎn)在于中華文化的四大茫然,整本書(shū)都是圍繞這四大茫然展開(kāi)論述,中華文化的四大茫然如下:
茫然之一:就知道賺錢(qián)
茫然之二:不了解世界
茫然之三:不了解別人為什么那么看你
茫然之四:不了解自己的缺點(diǎn)
大家有時(shí)間可以看看這本書(shū),我覺(jué)得寫(xiě)的不錯(cuò),至少我自己看完深有感觸,我覺(jué)得完全可以將這幾點(diǎn)套用到我們生活的很多方面,比如對(duì)于我們搞IT的技術(shù)人員來(lái)說(shuō),我認(rèn)為現(xiàn)在很多人也存在四大茫然:
茫然之一:只知道完成任務(wù)。也許是我年齡大了點(diǎn),但我覺(jué)得現(xiàn)在很多小朋友,尤其是85年以后出生的,工作的時(shí)候只是在完成任務(wù),事情做完了,有時(shí)也不測(cè)試,或者就是匆匆測(cè)試,匆匆結(jié)束,并沒(méi)有好好的想為什么這件事老大要讓我這樣做,這樣做有什么好處,會(huì)不會(huì)有缺點(diǎn),我是不是有更好的方法。當(dāng)你不去想的時(shí)候,意味著你少了很多提高的機(jī)會(huì)。
茫然之二:不追究為什么。很多人做事情就象第一條說(shuō)的那樣,只是完成任務(wù),并不去想其中的原理是什么。面試過(guò)很多人,對(duì)于目前工作兩三年的大部分人來(lái)說(shuō)(當(dāng)然我面試的不是好的學(xué)校畢業(yè)的,基本學(xué)校為中等偏下點(diǎn)),一旦涉及到Spring、Hibernate、Struts等框架深入點(diǎn)東西的時(shí)候,大都回答不上來(lái),只是對(duì)框架能熟練應(yīng)用而已。這樣夠么?計(jì)算機(jī)的很多知識(shí),當(dāng)你熟悉了其運(yùn)作原理,框架對(duì)于你來(lái)說(shuō),只是手到擒來(lái),看看學(xué)學(xué)就會(huì)用了。我問(wèn)過(guò)好幾個(gè)同事,平時(shí)晚上回去都干嘛,很多人都回答我晚上回去看看電視,稍微看看書(shū)就睡覺(jué)了。我有點(diǎn)驚訝,我想如果你想成為一個(gè)技術(shù)高手,一個(gè)能拿高薪的程序員,你又沒(méi)有天份,又不付出超過(guò)常人的努力,憑什么你比別人強(qiáng)呢?
茫然之三:不善于總結(jié)。很多人(又是很多人)過(guò)著做一天和尚撞一天鐘的日子,日子一天一天過(guò)去,基本不去總結(jié),只是過(guò)了好長(zhǎng)一段時(shí)間會(huì)發(fā)覺(jué),原來(lái)最近我啥也沒(méi)有進(jìn)步,啥也沒(méi)學(xué)到,還是老樣子。知識(shí)在于積累,你只有不斷總結(jié),知識(shí)才能更好的積累,才能更好的為你服務(wù)。
茫然之四:沒(méi)有明確的目標(biāo)。一個(gè)人沒(méi)有目標(biāo)就決定了他不會(huì)有長(zhǎng)足的進(jìn)步。你都沒(méi)有想過(guò)自己要成為一個(gè)架構(gòu)師,一個(gè)項(xiàng)目經(jīng)理,一個(gè)部門(mén)經(jīng)理,一個(gè)技術(shù)總監(jiān),都沒(méi)有想過(guò)要成為這樣的人需要具備什么樣的條件,你怎么可能知道自己欠缺什么?需要補(bǔ)充什么呢?長(zhǎng)遠(yuǎn)目標(biāo)要明確,然后根據(jù)長(zhǎng)遠(yuǎn)目標(biāo)進(jìn)行分析,我要達(dá)到這樣的目標(biāo),還有什么欠缺,據(jù)此制定短期目標(biāo),短期目標(biāo)一定要可實(shí)現(xiàn)可操作。這樣隨著你目標(biāo)的一步一步實(shí)現(xiàn),你各方面的能力也隨之提高了。
寫(xiě)了幾點(diǎn),也作為對(duì)自己的鞭策。
posted @
2010-04-14 22:05 The Matrix 閱讀(6160) |
評(píng)論 (10) |
編輯 收藏
2010年已經(jīng)過(guò)去一個(gè)月了,趕在農(nóng)歷春節(jié)前列一下今年的讀書(shū)清單,不能總把精力放在工作中了,也需要補(bǔ)充點(diǎn)新知識(shí)了,否則沒(méi)有新東西能貢獻(xiàn)出來(lái)了。
1、《OSGI原理與最佳實(shí)踐》,結(jié)合這本書(shū)并研究SpringDM,做一些實(shí)例。
2、《SQL語(yǔ)言藝術(shù)》
3、《Oracle9i&10g編程藝術(shù)》
4、《架構(gòu)之美》
5、《UML和模式應(yīng)用》
6、《UML彩色建模》
7、《領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)與模式實(shí)戰(zhàn)》
8、《敏捷軟件開(kāi)發(fā) 原則、模式與實(shí)踐》
9、《軟件開(kāi)發(fā)的邊界》
10、《軟件隨想錄》
11、《走出軟件作坊》
就這么多了,9、10、11去年都看過(guò)一遍了,但好多地方粗粗過(guò)了一下,還要仔細(xì)閱讀。
另外也對(duì)自己提個(gè)要求,看書(shū)要做讀書(shū)筆記。
2010年-我的讀書(shū)年!
posted @
2010-02-03 23:27 The Matrix 閱讀(2770) |
評(píng)論 (6) |
編輯 收藏
摘自《軟件隨想錄》
看了軟件隨想錄中下面一段話,覺(jué)得非常棒,作為一名軟件從業(yè)人員,不一定有機(jī)會(huì)能實(shí)現(xiàn)描述中的優(yōu)秀軟件產(chǎn)品,但這樣的理念需要貫穿我們每個(gè)人的心田,時(shí)刻記在心中:
【創(chuàng)造一個(gè)有使用價(jià)值的軟件,你必須時(shí)時(shí)刻刻都在奮斗,每一次的修補(bǔ),每一個(gè)功能,每一處小小的改進(jìn),你都在奮斗,目的只是為了再多創(chuàng)造一點(diǎn)空間,可以再多吸引一個(gè)用戶(hù)加入。沒(méi)有捷徑可走。你需要一點(diǎn)運(yùn)氣,但是這不取決于你是否幸運(yùn)。你之所以會(huì)有好運(yùn)氣,那是因?yàn)槟愦缤帘貭?zhēng)。
每天你前進(jìn)一小步,將一件東西做得比昨天好一點(diǎn)點(diǎn)。這樣的改進(jìn)幾乎看不出可以讓誰(shuí)獲益,幾乎沒(méi)有變化。但是,你前進(jìn)了一小步。
有無(wú)數(shù)個(gè)要做的這樣微小的改進(jìn)。
為了發(fā)現(xiàn)可以改進(jìn)的地方。你必須有一個(gè)思維定勢(shì),始終如一的用批判的眼光看世界。隨便找一樣?xùn)|西,如果你看不出它的缺點(diǎn),那么你的思維轉(zhuǎn)型還沒(méi)有成功。當(dāng)你成功的時(shí)候,你身邊親密的人會(huì)被你逼得發(fā)瘋。你的家人恨不得殺了你。當(dāng)你步行上班的時(shí)候,看到一個(gè)司機(jī)漫不經(jīng)心地開(kāi)車(chē),你幾乎用了所有的意志力才勉強(qiáng)忍不住沖上去告訴那個(gè)司機(jī),他這樣開(kāi)車(chē)差點(diǎn)兒要了旁邊坐在輪椅上的那個(gè)可憐小孩的命。
當(dāng)你改正了一個(gè)又一個(gè)這樣的小細(xì)節(jié)后,當(dāng)你磨光、定型、擦亮、修飾你的產(chǎn)品的每一個(gè)小邊角后,就會(huì)有神奇的事情發(fā)生。厘米變成分米,分米變成米,米變成了千米。你最后拿出來(lái)的是一件真正優(yōu)秀的產(chǎn)品。它第一眼就讓人覺(jué)得震撼,出類(lèi)拔萃,工作起來(lái)完全符合直覺(jué)。就算100萬(wàn)個(gè)用戶(hù)中有一個(gè)用戶(hù)某天突然要用到一個(gè)他100萬(wàn)次使用中才會(huì)用到一次的罕見(jiàn)功能,他發(fā)現(xiàn)了這個(gè)功能不僅能用,而且還很沒(méi):在你的軟件中,即使是看門(mén)人的小屋都鋪著大理石的地板,配有實(shí)心的橡木門(mén)和桃花心木的壁板。
就是在這個(gè)時(shí)候,你意識(shí)到這是一個(gè)優(yōu)秀軟件。】
posted @
2010-01-05 21:25 The Matrix 閱讀(2296) |
評(píng)論 (11) |
編輯 收藏
http://www.insideria.com/2009/05/flex-4-custom-layouts.html
http://www.insideria.com/2009/10/easy-flex-skinning-with-firewo.html
posted @
2009-11-25 12:25 The Matrix 閱讀(591) |
評(píng)論 (0) |
編輯 收藏
在Flash Builder 4 Beta 2版本中,使用mxml方式實(shí)現(xiàn)state的切換有了很大改進(jìn),使用起來(lái)更方便,具體可參見(jiàn)下文:
http://onflex.org/learn/fx4/index.php?page=States
看完這篇文章后,想到一個(gè)問(wèn)題,如何用編程的方式實(shí)現(xiàn)切換呢,找了參考資料,實(shí)現(xiàn)了一個(gè)例子,代碼如下:
開(kāi)發(fā)環(huán)境:Flash Builder 4 Beta2
<?xml version="1.0" encoding="utf-8"?>
<s:Application
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
creationComplete="creationCompleteHandler(event)">
<fx:Script>
<![CDATA[
import mx.core.UIComponent;
import mx.events.FlexEvent;
import mx.states.SetProperty;
import mx.states.State;
import spark.components.Label;
import spark.components.Panel;
private var stateArray : Array;
private var state1 : State;
private var state2 : State;
protected function creationCompleteHandler(event:FlexEvent):void
{
state1 = new State();
state1.name="state1";
state2 = new State();
state2.name="state2";
var stateArray1:Array = new Array();
var stateArray2:Array = new Array();
state1.overrides = stateArray1;
state2.overrides = stateArray2;
stateArray = new Array();
stateArray.push(state1);
stateArray.push(state2);
this.states = stateArray;
var panel:Panel = new Panel();
group.addElement(panel);
var label:Label = new Label();
panel.addElement(label);
buildStates(stateArray1, stateArray2, panel, label);
this.currentState = "state1";
}
private function buildStates(stateArray1:Array, stateArray2:Array,
compenent1:UIComponent, compenent2:UIComponent) : void{
stateArray1.push(makeSetProp(compenent1, "title", "Panel1"));
stateArray1.push(makeSetProp(compenent2, "text", "One"));
stateArray2.push(makeSetProp(compenent1, "title", "Panel2"));
stateArray2.push(makeSetProp(compenent2, "text", "Two"));
}
private function makeSetProp(target:UIComponent, name:String, value:*):SetProperty{
var sp:SetProperty = new SetProperty();
sp.target = target;
sp.name = name;
sp.value = value;
return sp;
}
]]>
</fx:Script>
<s:VGroup autoLayout="true" horizontalAlign="center">
<s:HGroup horizontalCenter="0">
<s:Button label="One"
click="this.currentState='state1'"/>
<s:Button label="Two"
click="this.currentState='state2'"/>
</s:HGroup>
<s:HGroup id="group" horizontalCenter="0">
</s:HGroup>
</s:VGroup>
</s:Application>
posted @
2009-11-11 21:59 The Matrix 閱讀(1628) |
評(píng)論 (0) |
編輯 收藏