OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

VB6で、長い時間かかる処理実行中の表示の工夫について

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

お礼率 37% (14/37)

VB6で、数分ダンマリになる処理があります。
処理の改善を図っていますが、とりあえずの手段として、フォームを出力して、
メモリとか→等が動いている画面を表示させたいのですが。

何か手軽に表示できるこのようなフォームの作り方を教えて下さい。
コーディングサンプルがありますと、大変助かります。
宜しくお願い致します。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全3件)

  • 回答No.1
レベル13

ベストアンサー率 59% (729/1235)

普通はプログレスバーを使います。
普通はプログレスバーを使います。


  • 回答No.2

No1さんの具体化です。ホームのどこかにプログレスバーを貼り付けます。 (ツールBoxにProgressBarのアイコンがなければ、 プロジェクト->コンポーネントで、Microsoft Windowss Common Controls 6.0 にチェックを入れる。 Dim i as Integer ProgressBar1.Max = 10000 '最大処理回数を設定 ...続きを読む
No1さんの具体化です。ホームのどこかにプログレスバーを貼り付けます。
(ツールBoxにProgressBarのアイコンがなければ、
プロジェクト->コンポーネントで、Microsoft Windowss Common Controls 6.0
にチェックを入れる。

Dim i as Integer

ProgressBar1.Max = 10000 '最大処理回数を設定
ProgressBar1.Value = 0 '初期値をゼロに
ProgressBar1.Visible = True 'バーの表示

'処理の一例
For i = 1 To 10000
ProgressBar1.Value = i '進行値設定
Next

ProgressBar1.Visible = False
  • 回答No.3
レベル12

ベストアンサー率 40% (230/562)

拡張コンポーネントを使うのが面倒なら、ラベルで "n% / 100%" とか表示させる手もありますね。 ループしてるんだったら、ラベルを置いておいて For N = 0 To 10000 'なんかしょり~ If N \ 100 = N / 100 Then Label1.Caption = (N \ 100) & "% / 100% ...続きを読む
拡張コンポーネントを使うのが面倒なら、ラベルで "n% / 100%" とか表示させる手もありますね。
ループしてるんだったら、ラベルを置いておいて

For N = 0 To 10000

'なんかしょり~

If N \ 100 = N / 100 Then

Label1.Caption = (N \ 100) & "% / 100%"
DoEvents

End If

Next N

プログレスバーにせよなんにせよ、表示する値を変更したあと、DoEventsって書かないと、実際には表示はされませんよ。
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

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

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

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ