質問ページ3 / 56


質問ページ3 / 56

質問ページ3/56

概要テキストの行数設定について
投稿者Parafla Quality
状態
カテゴリーParaFla!
投稿日2009-05-02 (土) 21:24:59
バージョン1.37

質問内容

テキストに文を表示して、"¥n"などで改行するようにしたのですが 行が多くなるとフリーズしてしまいます 10行だけ表示して、テキストから見えなくなったやつを消したいのですがどうすれば消せるでしょうか

補足: 改行しすぎてテキストからはみだして見えなくなってしまうということです

補足2: message(変数)というテキストとnyuryoku(変数)というテキストがあるとします nyuryokuのスクリプトに

onkeypress<Enter>{
	message = message + "\n" + nyuryoku;
}

これでnyuryokuで改行し続けるとmessageからはみ出ると思います。 このはみ出てみえなくなったmessageのほうの文章を10行いったら 自動で消えていくようにしたいのです。

回答

  • 「テキストから見えなくなったやつ」の意味が不明です。補足お願いします -- 2009-05-02 (土) 23:59:40
  • 補足を読んでも、消したい「はみだした部分」というのが、テキスト入力中に文章の頭がスクロールして見えなくなる部分なのか、10行で入力をやめさせるためにそれ以上書き込めないようにしたい部分なのかが分かりません -- 2009-05-03 (日) 10:49:57
  • こーゆーことかな。
    on(keypress"<Enter>"){
    	 message = message + "\n" + nyuryoku;
    	 arraymax = 10; // 表示行数
    	 arraymessage = message.split("\n"); // message欄を行(\n)で配列化
    	 if( arraymessage.length > arraymax ){
    	 	 deletemessage = arraymessage.splice( 0, arraymessage.length - arraymax );
    	 }
    	 	 // 表示行数を超えたら超過行数分を配列先頭から削除、超過分はdeletemessageへ一時保存
    	 message = arraymessage.join("\n"); // 配列化からmessageへ戻す
    	 nyuryoku = ""; // nyuryoku初期化
    }
      -- 2009-05-06 (水) 22:25:22
  • 横レス失礼します。String.lengthは、文字数だったような?arraymax=10なら10文字になるかと思います。あとspliceじゃなくてsliceかな?違ってたごめんなさい。 -- 通りすがり? 2009-05-09 (土) 20:21:46
  • StringをArrayに変換して処理をし、再びStringに戻してるからいいんでないの -- 2009-05-09 (土) 21:38:52