• ベストアンサー

一時停止と再開

今、Visual Basic でスライドショーのプログラムを作っています。 その中で、プログラムの一時停止(それに伴う再開)という事をしたいのですが、どのようにすればよいかわかりません。 教えて下さい。お願いします。

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

  • ベストアンサー
  • TAGOSAKU7
  • ベストアンサー率65% (276/422)
回答No.5

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
質問者

お礼

丁寧に回答していただいてありがとうございます。

その他の回答 (4)

  • TAGOSAKU7
  • ベストアンサー率65% (276/422)
回答No.4

#2の発言のARCに質問です。 >Sleep 100 '100ミリ秒待機する とありますが、これは意味があるのですか? VBの処理にロックがかかるだけで、意味がないのでは?

  • TAGOSAKU7
  • ベストアンサー率65% (276/422)
回答No.3

>スライドショーのプログラム とあるので、きっとタイマーコントロールで定期的に画像を更新しているのでは? もしその場合#1さんの発言の方がいいかも? PublicもしくはPrivateでフラグの宣言 フラグのデフォルト=0 タイマーイベントでフラグが0の時以外は処理を抜ける。 一時停止ボタンの機能:フラグ=1 一時停止解除ボタンの機能:フラグ=0 もしさっきの推測がはずれならば、どのようにスライドショーの画面の更新が行われているかが気になりますね。

gotkat
質問者

お礼

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

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.2

途中でSleepを挟んだ方がいいかも。 (Genaral) (Declarations)に Private Declare Sub Sleep Lib "KERNEL32" (ByVal dwMilliseconds As Long) って行を追加しまして、 Do Until 終了条件  Sleep 100 '100ミリ秒待機する  DoEvents Loop のようにします。

  • ykkw_2001
  • ベストアンサー率26% (267/1014)
回答No.1

>一時停止 ボタンクリックで、 val_restart = 0 do   doevents   if val_restart = 1 then exit do end if loop >再開  ボタンクリックで  val_restart = 1 やってることわかります? (試してないので、自信なし)

gotkat
質問者

お礼

ありがとうございます。 さっそくやってみます。

関連するQ&A

  • パワーポイントスライドショーの一時停止と再開

    PPを使い始めたばかりです。windows98sec PP2000です。 PPでスライドショーを作成していますが、スライドショーを実行していて途中で止め(一時停止みたいに)、他のアプリを操作し、またスライドショーを停止したページから始める事はできますでしょうか? ヘルプなどを探したのですが見つかりませんでした。 現在、スライドショーである説明をし、その後説明にある操作をパソコン上でやりたいと思っているのですが、どうもスライドショーを一旦中止してからでないと 切り替えができないので困っています。 どなたか切り替え方法をご存知でしたら教えて下さい。 また、出来ないのならその旨教えて頂けると助かります。 宜しくお願いします。

  • パワーポイントのスライドショーで一時停止

    パワーポイントでスライドショーを作成しました。質問などが出た場合、その時の画面で一時停止し、再開する方法が分かりません。よろしくお願いします。

  • 一時停止の再開方法

    引っ越しのため「お手がるプラン」に変更し、一時停止していました。 再開する方法を教えてください。 ※OKWaveより補足:「ひかりTVのサービスやISPぷらら」についての質問です。

  • セキュリテイ機能の一時停止と再開の方法

    外のソフトをダウンロードする場合、セキュリテイ機能を一時停止して実行するような場合がある、 セキュリテイ ゼロを使っていますこの機能の一時停止と再開動作の方法をお尋ねします

  • プログラムの一時停止について

    Linuxである計算プログラムを実行しています。そのパソコンをシャットダウンする必要があるので、現在動いているそのプログラムをシャットダウン前に停止して、パソコンの再起動後に計算も復帰させたいと思っております。そのプログラムに一時停止機能はございませんので、OS側でその作業を行いたいと思っています。 はじめ、”kill -STOP プロセスID”でプログラムを停止して、”kill -CONT プロセスID”で復帰できると思ったのですが、それで復帰させようと思うと、そのようなプロセスIDはありませんというエラーメッセージが出ました・・・。パソコンを停止しなければ、そのコマンドで上手く停止・復帰が出来たのですが・・・。 パソコンを再起動しても、実行プログラムを停止・再開させる方法をご存知の方がいれば、是非アドバイスを頂きたいです。

  • CD-ROM?を挿入すると、途中で一時停止や終了ができません

    蔵衛門と銘打った写真を編集したCD-ROM?が友人の結婚式のあと届きました。パソコンに挿入すると、蔵衛門と表示したあと写真を編集したスライドショーが始まりますが、途中で一時停止や終了ができません。途中で一時停止や終了するにはどうすればよいのでしょうか?ちなみに一時停止させて写真をプリントしたいのですが。

  • 一時停止について

    一時停止についてです。 教習所では「一時停止とは停止線の前で3秒ほど停止すること」と習いました。 が、実際、路上を走っている車を見ると、一時停止の停止線をはみだして停止して進んでいる車が多いです。 特に、見通しの悪いT字路などでそのような事が見受けられます。 一時停止の停止線が、道路の曲がり角よりはるか手前にあるせいかもしれませんが・・・。 たとえ、見通しが悪いところでも停止線の前でちゃんと停止し、さらに曲がるところまで来たらまた停止しないといけないですよね?

  • iTuneで一時停止/再開のスペースキーが効かない

    iTuneで音楽の「一時停止/再開」をするはずの スペースキーが効きません。 考えられる理由または代替策を教えてください。 パソコンはMicrosoft Surfaceで、 キーボードを装着しています。 OSはWindows10です。 よろしくお願いいたします。

  • 一時停止をうまく使いたい。

    getchar();のような一時停止をすることのできる関数を使って、プログラムを作りたいと思っています。 たとえば、 1+1= と表示し、エンターキーなどのキー入力があった時点で、 = の隣に 2 という答えを表示したいです。このようにプログラムすることはできますか?? よろしくお願いします。

  • プログラムを一時停止→再起動→続きから再実行

    http://okwave.jp/qa3279922.html の訂正版です。 OSはubuntu、言語はC++を用いております。 Ctrl+Zでプログラムを一時停止できると思いますが、 そのまま再起動すると、もうそのプログラムは一時停止した場所からは 再開できません。 Ctrl+Zは、プログラムのデータ・状態をHDDに書き込んでいるのだと思いますが、そのファイルが、 1.シャットダウンしても消えないようにする 2.再起動後、プログラムを続ける 方法がありましたら、教えてください。

専門家に質問してみよう