Flash MX 之後支援 TextField (文字框)的屬性變多了,如過想要讓動態帶入的文字依照字串多寡決定寬度可以用 TextField.textWidth 計算帶入字串的寬度(中英文均可以計算,實際測試與player顯示出來差 4 pixel),這次有個專案導覽選單剛好用到,所以分享一下心得!
簡單範例:
send_btn.onRelease = function() {
//把 multiline、wordWrap 屬性回復成 false 文字框寬度才會重新計算
receive_txt.multiline = receive_txt.wordWrap=false;
receive_txt.text = provide_txt.text;
if (provide_txt.text == null) {
receive_txt._width = receive_txt._height = 0;
} else {
if (receive_txt.textWidth+4>260) {
receive_txt._width = 260;
//把 multiline、wordWrap 屬性變成 true 文字才能正確計算高度
receive_txt.wordWrap = receive_txt.multiline=true;
receive_txt._height = receive_txt.textHeight+2;//高度需加 2 pilex 多行時顯示時才不會有問題(太小)
} else {
receive_txt._width = receive_txt.textWidth+4;//寬度需加 4 pilex 顯示時字才不會被遮到
receive_txt._height = receive_txt.textHeight;
}
}
provide_txt.text = "";
};
顯示留言
很實用的資訊,謝謝版主^~^