-PR-
解決済み

一時停止と再開

  • 困ってます
  • 質問No.157974
  • 閲覧数1734
  • ありがとう数4
  • 気になる数0
  • 回答数5
  • コメント数0

お礼率 62% (23/37)

今、Visual Basic でスライドショーのプログラムを作っています。
その中で、プログラムの一時停止(それに伴う再開)という事をしたいのですが、どのようにすればよいかわかりません。
教えて下さい。お願いします。
通報する
  • 回答数5
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.5
レベル12

ベストアンサー率 65% (276/422)

Enabledの操作で充分だと思いますよ。

ちなみに先ほどの方法の処理を書くと(フラグの1と0の値が変わってますが・・・)

Private bytFlg As Byte

Private Sub cmdPause_Click()
  bytFlg = 0
End Sub

Private Sub cmdPlay_Click()
  bytFlg = 1
End Sub

Private Sub Form_Load()
  bytFlg = 0
End Sub

Private Sub Timer1_Timer()
  If bytFlg = 1 Then
    'ここに画像読み込み処理
  End If
End Sub

とするとできます。
しかし、画像の読み込みを必要としないときもタイマーが動いているので、Windowsに負荷がかかります。

だからgotkatさんの今までのEnabledの操作で充分です
お礼コメント
gotkat

お礼率 62% (23/37)

丁寧に回答していただいてありがとうございます。
投稿日時 - 2001-10-27 12:40:50
-PR-
-PR-

その他の回答 (全4件)

  • 回答No.1
レベル13

ベストアンサー率 26% (267/1014)

>一時停止
ボタンクリックで、
val_restart = 0
do
  doevents
  if val_restart = 1 then
exit do
end if
loop

>再開
 ボタンクリックで
 val_restart = 1

やってることわかります?
(試してないので、自信なし)
お礼コメント
gotkat

お礼率 62% (23/37)

ありがとうございます。
さっそくやってみます。
投稿日時 - 2001-10-26 21:42:17


  • 回答No.2
レベル13

ベストアンサー率 46% (643/1383)

途中でSleepを挟んだ方がいいかも。

(Genaral) (Declarations)に

Private Declare Sub Sleep Lib "KERNEL32" (ByVal dwMilliseconds As Long)

って行を追加しまして、

Do Until 終了条件
 Sleep 100 '100ミリ秒待機する
 DoEvents
Loop

のようにします。
  • 回答No.3
レベル12

ベストアンサー率 65% (276/422)

>スライドショーのプログラム
とあるので、きっとタイマーコントロールで定期的に画像を更新しているのでは?
もしその場合#1さんの発言の方がいいかも?

PublicもしくはPrivateでフラグの宣言
フラグのデフォルト=0
タイマーイベントでフラグが0の時以外は処理を抜ける。
一時停止ボタンの機能:フラグ=1
一時停止解除ボタンの機能:フラグ=0

もしさっきの推測がはずれならば、どのようにスライドショーの画面の更新が行われているかが気になりますね。
お礼コメント
gotkat

お礼率 62% (23/37)

ご推測の通りです。説明不足ですみません。
僕のプログラムがまずいらしく、上述の方法がうまく出来ません。
それで、
一時停止ボタンの機能:Timer1.Enabled=False
一時停止解除ボタンの機能:Timer1.Enabled=True
としたら出来ました。これらのボタンを押して欲しくないときは、
Command1.Enabled=False
としています。このやり方でいいんでしょうか?

まだVisual Basicを始めたばかりなので、参考になりました。
ありがとうございます。
投稿日時 - 2001-10-27 09:46:09
  • 回答No.4
レベル12

ベストアンサー率 65% (276/422)

#2の発言のARCに質問です。

>Sleep 100 '100ミリ秒待機する
とありますが、これは意味があるのですか?
VBの処理にロックがかかるだけで、意味がないのでは?
このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

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

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

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

特集


専門家があなたの悩みに回答!

-PR-

ピックアップ

-PR-
ページ先頭へ