投稿日 | : 2005/03/23(Wed) 23:40 |
投稿者 | : kuro3 |
Eメール | : |
URL | : |
タイトル | : リッチテキストボックスを用いたターミナル(必要条件を補足しました。) |
kuro3です。
必要条件につきまして補足で記載させていただきました。
かじょ書き状態でまとめさせていただきました。
できましたら、ご一読いただけないでしょうか。
テキスト表示系
・文字単位でのコピーを行うこと。
(3行目の5文字目から、6行目の3文字目など)
・文字を色分けできること。
・文字は、半角/全角混じりです。
ターミナルとして、絶対やりたいこと。
・500行程度のログをちらつきなしで、表示したい。
(目視したい)
・多少ちらついても、1万行オーバーのログをとりたい。
・ログは上から下にながし、
受信文字の最終行を、一番したに表示すること。
送受信環境(参考です)
・受信文字列は、半角のみ。
・送信文字列は、全角あり。(使用頻度小)
・送信文字の改行コード間の文字数は、
0〜無制限(実際は、0〜100文字程度です。)
・受信文字は、1秒で400行程度更新されております。
もっと、あがる可能性はありますが・・・。
OSなど
・win2k pro + vb6
以上です。
以下、元記事です。
> kuro3といいます。
> 良く覗かせていただいておりますが、書き込むのは初めてとなります。
>
> 実は、リッチテキストボックスを使用しまして、
> ターミナル関係のアプリを作り初めているのですが、障害にあたってしまいました。
> できましたら知恵をお貸しいただけないでしょうか。
>
> 1)やりたいこと
> リッチテキストボックスの文字列が、501行以上になったら、
> 下から500行を残して文字列を削除すること。
>
> 2)いま問題となっていること。
> ・処理が遅すぎる。
> 受信文字が、すごい勢いで増えており文字列削除のスピードが
> 間に合わなくなってしまいました。
> ・画面がちらつく
>
> 3)具体的処理内容
> 0.タイマー処理にて受信した文字をリッチテキストボックスに追記
> (seltextにて行っております。)
> @.こちらのHPにて紹介されております行数取得の手法にて、
> リッチテキストボックス全体の行数を削除
> A.(全体の行数-500行)にて削る必要のある行数をチェック
> B.リッチテキストボックスの先頭から、削る必要がある分だけ、
> instrを用い改行コードの位置を検索
> C.Bで検索した改行コードの位置をもとにRightコマンドで、
> 500行分の文字列を作成
> D.Cで作った文字列をリッチテキストボックスに貼り付け
>
>
> 処理がおそいのは、3−B,Dあたりでもたついていると考えているのですが、
> 画面がちらつくほうはなにがなにやらと言った状況です・・・。
>
> アドバイスいただけましたら幸いです。