-PR-
解決
済み

テキストボックスの表示方法

  • 困ってます
  • 質問No.24051
  • 閲覧数177
  • ありがとう数3
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 80% (34/42)

表示方法がわからないので、教えてください。
例えば、
ボタン押すと,ランダムに数字が出て、
それのすべてをログとして取る
という風にしたいとき、
text1にランダム表示するとして、
text2にログをとりたいとき
今は、
text2 = text2 & text1
としてやっています。
しかし、数万桁となったとき。
どんどん重くなってしまいます。

できれば、text2の一番最後に、
どんどん追加していきたいのですが、やり方がわかりません。
それと、そのログのテキストの一番最後の所に、カーソルをもっていきたいのです。
上の方式だと、一番上の場所にカーソルがいってしまいますので、スクロールバーを動かすまでは、下が見えないのです。

変な文章で申し訳ないのですが、どなたか、やり方教えてくれませんか?
ちなみに、VBは、6.0をつかっています。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル11

ベストアンサー率 49% (139/279)

1.毎回ログを書き込むのをやめて、最後にテキストボックスに設定する。

2.毎回書き込むが、カーソルをテキストボックスの末尾に持っていくのは、最後だけにする。

のいずれかをすれば、ちらつかなくなるのでは?
お礼コメント
mutuzi

お礼率 80% (34/42)

再びありがとうございます。
とりあえず、みながらやってみたかったもので、
確かに、どちらともちらつかなくなりますね。

とりあえず、やってみて、ダメなら、基本自体からいじってみようかと思います。
どうもありがとうございました。
投稿日時 - 2001-01-07 22:03:46
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.1
レベル11

ベストアンサー率 49% (139/279)

テキストボックスの文字列操作はスピードが遅いので、文字列の変数にログを記録するようにして、その変数で文字列を編集してからテキストボックスに入れるように変えてみてください。 'ログを入れる変数は、Generalでとってください。 Private strLog As String Private Sub Command1_Click() Dim strRnd As String s ...続きを読む
テキストボックスの文字列操作はスピードが遅いので、文字列の変数にログを記録するようにして、その変数で文字列を編集してからテキストボックスに入れるように変えてみてください。

'ログを入れる変数は、Generalでとってください。
Private strLog As String

Private Sub Command1_Click()
Dim strRnd As String
strRnd = CStr(Int(1000*Rnd(1)) + 1)
Text1.Text = strRnd
strLog = strLog & strRnd & vbCrLf
Text2.Text = strLog
End Sub

テキストボックスのカーソルの位置はSelStartプロパティで操作します。

Text2.SelStart = Len(strLog)

それから、ログですが、この用途ならリストボックスでもいいのではないでしょうか?
補足コメント
mutuzi

お礼率 80% (34/42)

早速の解答ありがとうございます。
やってみたところ、できました。
それで追加という形で申し訳ないのですが、
ボタンを押すのをタイマーでやり、
intervalを、5ぐらいでやると、
テキスト自体がちらついてしまいます、
これはどうにかできないのでしょうか?
どなたか教えてはくれませんか?
できないのなら、できないで、あきらめますので、
どなたか教えてください。
投稿日時 - 2001-01-04 17:28:18


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ