VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2005/03/24(Thu) 00:02
投稿者kuro3
Eメール
URL
タイトル「解決済み」リッチテキストボックスを用いたターミナル パートU

★2005/03/26追記★
皆様のご支援の結果、問題解決できました。本当にありがとうございます。
(おかげさまで、最低必要条件を満たすコードはついさっき完成しました。)
いつか、逆に自分が支援できるように精進させていだきます。
★2005/03/26追記はここまで★

kuro3といいます。
多くの方の返信、本当にありがとうございます。
また、夜しか返信できておらず申し訳ございません。仕事の都合で・・・。
スレッドが長くなりましたので、パート2を作成させていただきました。

実は、リッチテキストボックスを使用しまして、
ターミナル関係のアプリを作り初めているのですが、障害にあたってしまいました。
できましたら知恵をお貸しいただけないでしょうか。

1)やりたいこと
  リッチテキストボックスの文字列が、501行以上になったら、
  下から500行を残して文字列を削除すること。

2)いま問題となっていること。
  ・処理が遅すぎる。
   受信文字が、すごい勢いで増えており文字列削除のスピードが
   間に合わなくなってしまいました。
  ・画面がちらつく

3)具体的処理内容
  0.タイマー処理にて受信した文字をリッチテキストボックスに追記
    (seltextにて行っております。)
  @.こちらのHPにて紹介されております行数取得の手法にて、
    リッチテキストボックス全体の行数を削除
  A.(全体の行数-500行)にて削る必要のある行数をチェック
  B.リッチテキストボックスの先頭から、削る必要がある分だけ、
    instrを用い改行コードの位置を検索
  C.Bで検索した改行コードの位置をもとにRightコマンドで、
    500行分の文字列を作成
  D.Cで作った文字列をリッチテキストボックスに貼り付け


処理がおそいのは、3−B,Dあたりでもたついていると考えているのですが、
画面がちらつくほうはなにがなにやらと言った状況です・・・。


また、下記が本ターミナルの基本思想となっております。

テキスト表示系
・文字単位でのコピーを行うこと。
 (3行目の5文字目から、6行目の3文字目など)
・文字を色分けできること。
・文字は、半角/全角混じりです。

ターミナルとして、絶対やりたいこと。
・500行程度のログをちらつきなしで、表示したい。
 (目視したい)
・多少ちらついても、1万行オーバーのログをとりたい。
・ログは上から下にながし、
 受信文字の最終行を、一番したに表示すること。
 

送受信環境(参考です)
・受信文字列は、半角のみ。
・送信文字列は、全角あり。(使用頻度小)
・送信文字の改行コード間の文字数は、
 0〜無制限(実際は、0〜100文字程度です。)
・受信文字は、1秒で400行程度更新されております。
 もっと、あがる可能性はありますが・・・。

OSなど
・win2k pro + vb6

アドバイスいただけましたら幸いです。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -