TextField上での右クリックメニューのカスタマイズ

ちょっと気になったことを試すため久しぶりにFlashを。 気になったことというのは、ContextMenuクラスを使えば右クリックで出るメニューをカスタマイズすることができますが、TextFiled上で出るメニューもカスタマイズできたかな?ってことです。
結論はできます。

通常TextFiled上では以下のようなビルトインメニューが出ます。
 カット
 コピー
 ペースト
 削除
ーーーーーーー
 すべて選択
これにカスタムメニュー「選択中の文字を大文字にする」を追加したのが以下のサンプルです。
 (ほぼヘルプのサンプルのままですが...)



// フレーム1スクリプト
this.createTextField("output_txt", 1, 10, 10, 280, 180);
output_txt.border = true;
output_txt.multiline = true;
output_txt.wordWrap = true;
output_txt.type = "input";
output_txt.text = "abcdefghijklmnopqrstuvwxyz";
var myformat:TextFormat = new TextFormat();
myformat.size = 48;
myformat.color = 0x000099;
output_txt.setTextFormat(myformat);
output_txt.setNewTextFormat(myformat);
var my_cm:ContextMenu = new ContextMenu();
my_cm.customItems.push(new ContextMenuItem("選択中の文字を大文字にする", doUppercase));
function doUppercase():Void {
  var startIndex:Number = Selection.getBeginIndex();
  var endIndex:Number = Selection.getEndIndex();
  var stringToUppercase:String = output_txt.text.substring(startIndex, endIndex);
  output_txt.replaceText(startIndex, endIndex, stringToUppercase.toUpperCase());
}
output_txt.menu = my_cm;

カテゴリ

トラックバック(0)

このブログ記事を参照しているブログ一覧: TextField上での右クリックメニューのカスタマイズ

このブログ記事に対するトラックバックURL: http://uenon.jp/mt/mt-tb.cgi/68

コメントする


画像の中に見える文字を入力してください。

このブログ記事について

このページは、Naohiko Uenoが2005年1月25日 01:13に書いたブログ記事です。

ひとつ前のブログ記事は「Flexで生成したSWFファイルをBlogに載せる」です。

次のブログ記事は「FlexのML作りました」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.1