快速业务通道

教你如何創建自己的文字編輯器

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-10


因為之前看到要尋找MX 2004文字編輯器的組件, 但我在想MX和2004的編輯器在功用上有什麼不同呢?? 既然要等待到不如一起來動手做吧, 在這裡我會教大家製做出粗體, 斜體, 底線等最基本的寫法, 學好之後可以修改得更好更穩定:)
不管怎樣, 首先是新手的話還是要開始教你們在當中會使用到的一些指令
指令 1: Selection.getBeginIndex();會回傳當前所選取文字的開始位置, 就是你們動態文本中選取部份文字的時候, 鼠標開始的位置, 如果沒有選取的回傳值是 -1
指令 2 :

Selection.getEndIndex();
會回傳當前所選取文字的結束位置, 就是你們動態文本中選取部份文字的時候, 鼠標結束的位置, 如果沒有選取的回傳值是 -1
指令 3

: my_text.getTextFormat(index);

my_text.getTextFormat(beginIndex, endIndex);

返回object值, 通常使用的是這兩種方法, 第一種是指定index(數目)的位置, 那麼就會返回得到該位置的char, 第二種是定義位置而取得位置當中的文字, 如: my_text.getTextFormat(3,5); 那麼就會得到my_text當中3到5的文字





指令 4 :

my_text.setTextFormat(textformat);

my_text.setTextFormat(index, textformat);

my_text.setTextFormat(beginIndex, endIndex, textformat);

setTextFormat就是設定文字格式, 第一種只要有使用過AS創建動態文本的人都會使用到, 第二種和第三種同getTextFormat一樣, 是針對某文字設定格式
那麼開始吧, 首先打開Flash, 在當中建立一個輸入文本實體名叫 my_text, 分別建立粗體(bold),斜體(italic),底線(underline), 左對齊(leftAlign)....等的按鈕, 如圖 :按此在新窗口浏览图片然後到第一幀輸入 :

onEnterFrame = function() {
if(Selection.getFocus() == "_level0.my_text") { //循環偵測目前鼠標是否是在輸入欄位當中
ss = Selection.getBeginIndex(); //取得選取的開始位置
se = Selection.getEndIndex(); //取得選取結束的位置
}
}


//監聽文字大小ComboBox更換事件
sizeChange = new Object();
sizeChange.change = function (eventObj) {
if (ss != se) { //如果有選取範圍的話
current = my_text.getTextFormat(ss, se); //取得輸入欄位範圍內的文字
current.size = eventObj.target.value; //取得ComboBox當中的值, 然後設定範圍內的格式
my_text.setTextFormat(ss, se, current); //設定格式
} else { //當沒有選取範圍的時候
current = my_text.getTextFormat();
current.size = eventObj.target.value;
my_text.setNewTextFormat(current);
}
}
txtSize.addEventListener("change", sizeChange);


//監聽字型ComboBox更換事件, 指令解釋同上
fontChange = new Object();
fontChange.change = function (eventObj) {
if (ss != se) {
current = my_text.getTextFormat(ss, se);
current.font = eventObj.target.value;
my_text.setTextFormat(ss, se, current);
} else {
current = my_text.getTextFormat();
current.font = eventObj.target.value;
my_text.setNewTextFormat(current);
}
}
txtFont.addEventListener("change", fontChange);


//監聽顏色ComboBox更換事件, 指令解釋同上
colorChange = new Object();
colorChange.change = function (eventObj) {
if (ss != se)

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号