• ベストアンサー

決まった時刻(秒単位)にボタンを自動でクリックしたい

決められた時刻(秒単位もしくはそれ以下)に 決まったボタンを押せる様なソフトは無いでしょうか? 例えば19時0分5秒にスタートボタンをクリックする、 あるいは19時0分5秒50ミリ秒にスタートボタンをクリックする という様な操作の事です。 始めはロケットマウスを試したのですが、コントロールできる 時間の最小単位が分だった為に使えませんでした。 ロケットマウスの様に高機能でなくても構いません。 よろしくお願いします。

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

  • ベストアンサー
  • harapeco7
  • ベストアンサー率54% (33/61)
回答No.3

修正版です。 (ちょっと確率UPです。が、やはり実用レベルとは言えませんね。) stopform(true) msgbox("OKを押した3秒後にクリックします。") gettime() time0=COPY(G_TIME_HH2+G_TIME_NN2+G_TIME_SS2+G_TIME_ZZ2,1,7) PRINT "開始時刻:"+time0 time0=val(time0)+30 PRINT "設定時刻:"+time0 while true gettime() time1=COPY(G_TIME_HH2+G_TIME_NN2+G_TIME_SS2+G_TIME_ZZ2,1,7) ifb time1=time0 then msgbox("クリック出来ました。") exitexit elseif time1>time0 msgbox("クリックに失敗しました。(設定時刻を通りすぎました。)") exitexit endif sleep(0.005) wend

mickey00
質問者

お礼

お礼が大変遅くなってしまい、申し訳ありません。 わざわざサンプルプログラムまで作成頂き 大変感謝しています。 これを自分用にカスタマイズして使用しています。 ありがとうございました。

その他の回答 (3)

  • iriyak
  • ベストアンサー率48% (40/82)
回答No.4

以下のプログラムで 10 ミリ秒を確かに SLEEP が刻んでいるようですので、この while ループによる CPU 使用率が影響のない PC 環境でしたら、質問者のやりたいことを UWSC で実現可能かもしれません。 最終的に(スタートボタンが)クリックされたアプリケーションにイベントが届くまでの時間を考慮して微調整は必要だとは思いますが・・・。 prev = 0 while !GETKEYSTATE(VK_ESC)   SLEEP(0.01)   prev = d(prev) wend function d(prev)   now = GETTIME() * 1000 + G_TIME_ZZ   print now - prev   result = now fend

mickey00
質問者

お礼

お礼が大変遅くなってしまい申し訳ありません。 サンプルプログラムまで作成して頂き 感謝致します。 確かに微調整は必要みたいですね。 いろいろトライしてみようと思います。 ありがとうございました。

mickey00
質問者

補足

お二人とも回答の内容は甲乙つけがたいです。 そこで、勝手ながら投稿順にポイントを つけたいと思います。 ありがとうございました。

  • harapeco7
  • ベストアンサー率54% (33/61)
回答No.2

>どうやらBASICの様にプログラミングが必要みたいですね。 ですね。ヘルプが非常に良くできていますので、良く目を通して下さい。 >あるいは19時0分5秒50ミリ秒にスタートボタンをクリックする ミリ秒単位で取得は出来ても、クリックとなると・・・ 秒単位では、問題は発生しないと思いますが、ミリ秒となると スキャンタイム(プログラムがループする速度)相当早くないと、 指定した時刻を取りこぼしてしまいます。 と、いうことでテストプログラムを雑(タイミングによっては存在しない設定時刻となる) ですが書きましたのでお試し下さい。 ちなみに私の環境では、五分五分といった所でした。 下記メモ帳に張り付け、拡張子を.uwsとし、uwscと関連づけて使用して下さい。 stopform(true) msgbox("OKを押した3秒後にクリックします。") gettime() time0=COPY(G_TIME_HH2+G_TIME_NN2+G_TIME_SS2+G_TIME_ZZ2,1,7) PRINT "開始時刻:"+time0 time0=val(time0)+30 PRINT "設定時刻:"+time0 while true gettime() time1=COPY(G_TIME_HH2+G_TIME_NN2+G_TIME_SS2+G_TIME_ZZ2,1,7) ifb time1=time0 then msgbox("クリック出来ました。") exitexit elseif time1>time0 msgbox("クリックに失敗しました。(設定時刻を通りすぎました。)") exitexit endif wend

  • harapeco7
  • ベストアンサー率54% (33/61)
回答No.1

フリーの UWSC というソフトは如何でしょうか? 下記ホームページです。 http://www.uwsc.info/index.html GETTIME という関数で日時をミリ秒の単位まで取得できます。

mickey00
質問者

お礼

harapeco7さん ご回答ありがとうございます。 どうやらBASICの様にプログラミングが必要みたいですね。 でもミリ秒単位まで扱えるとの事なので、 それは大変魅力的です。

関連するQ&A

  • マウスの左クリックを押すと、2つのボタンを数秒おき

    説明が少しわかりにくいかもしれませんが、ご存知の方がいらっしゃいましたらご教授頂けたら助かります。 質問の内容ですが、 マウスおよびキーボードの操作を記録して、対応したボタンを押すとその操作をしてくれるようにしたいです。 実際はゲームで使用したいのですが、 キーボードの数字の8と9に、それぞれ対応したスキルが登録されているとします。 その8と9を交互に1秒or2秒ずつ押したいのですが、 「マウスの左クリックを押している間は8と9を交互に押す」というマクロを登録したいと思っています。 ご存知の方いらっしゃいましたらよろしくお願い致します。 ※UWSCは以前使用していたことがありますが、ホットキー?(この場合8と9を交互に押してくれるためのボタン)が左クリックには登録できなそうでしたので><

  • フェイスブックのボタン表示まで何秒?

    私、最近IEの反応がかなり遅くなっているので「なぜだろう」と考えていました。 今日気づいたのですが、質問のタイトルから、質問をクリックして、質問文が表示されます。 が、一時的にマウスホィールの動作を受け付けなくなったり、その表示画面の中でクリックしても反応が無くなるケースがあります。 画面を良く見てみると、ツイッターボタンやグーグル+1は、すぐに表示されるのに、フェイスブックの「いいね」ボタンだけは、私の計測(5回)では、18秒~20秒掛かります。 IEは、その間、「いいね」ボタンのリザルトコードを待っているようで、その時に限って、操作を受け付けなくなります。 皆さんの場合、こんな症状は出ていますか? 出ていたら、何秒待たされます?

  • 「スタート」ボタンをクリックでフリーズ10秒する

    win2000での質問です。 画面左下の「スタート」ボタンをクリックすると、10秒以上、フリーズしてしまうのですが、対処策がわからず、困っております。 よいアドバイスがありましたら、教えてください。

  • Windowsの時刻について

    私はプログラムの初心者です。 Windowsの正確な時刻をミリ秒レベルで取得するために”GetLocalTime”で取得しようと考えていたのですが、マイクロソフトのmsdnに システムが時刻を生成するのは毎秒 18 回です。したがって、Interval プロパティはミリ秒単位で設定されますが、間隔の真の精度は最大で 18 分の 1 秒です。 との記述があります。 上記であれば、約55.5ミリ秒毎にシステムの時刻を作成しているので、OSはどのようにして”GetLocalTime”で取得できるミリ秒の時間を作成しているのでしょうか。 実際に”GetLocalTime”で取得できるミリ秒での時刻の精度はどれ位なのでしょうか。 ”GetLocalTime”以外にOSの正確な時刻を取得する方法はあるのでしょうか。 宜しくお願い致します。

  • パソコンの日付と時刻を「手動で」誤差0秒に変更

    教えてください。Windows 10で日付と時刻を手動で変更したいのですが、どうすれば秒単位で合わせられますか?「日付と時刻の変更」で、どのタイミングで「変更」をクリックしても地域標準時との差を0秒にできません・・・。

  • スタートボタンの右クリックをショートカットキーで

    「スタートボタンを普通にクリック=スタートメニューを表示させる」だけならキーボード左下のWindowsボタンを押せばいいのですが。 要は、「タスクバーとスタートメニューのプロパティ」を、マウス操作無しで出したいのです。 何か方法をご存知の方がいらしたらご教授下さい。

  • Windows XPでタスクバーの時刻表示が分単位までしか表示されませ

    Windows XPでタスクバーの時刻表示が分単位までしか表示されません。コントロールパネルの地域と言語のオプションのカスタマイズでは秒単位まで表示される設定になっていると思うのですが?パソコンが壊れているのでしょうか?

  • クリックをした後、そのボタンを離さずに、取り消し?

    パソコンを操作して、マウスをクリックします。 クリックしたボタンを押したまま、指を離さなければ、そのクリック自体は実行されないと思います。 このような場合に、クリックして押したままの指をそのままにしながら、そのクリックの命令を解除する方法ってありますでしょうか? わかりずらくて申し訳ありません。 具体例を示しますと・・・ クリックをした瞬間に、気が変わって、そのクリックを取りやめたい。 クリックのボタンを押してしまったけど、まだ、指をマウスのボタンから離していないので、そのクリックの命令は保留されている(指をマウスから話すと、そのクリックの命令が実行される)。 そこで、クリックのボタンを押したまま命令を実行させずに、「なにかの操作」をして、そのクリックを無効にさせたい。 この「なにかの操作」をして、そのクリックを無効にさせ、ボタンを押した指を、マウスから話すことは可能でしょうか? ちなみに、PCの電源を落とす以外で、お願いしたいと思います。 この「なにかの操作」をご存知の方がいらっしゃいましたら、ご教授いただければ幸いです。 どうぞよろしくお願いいたします。

  • 現在時刻をミリ秒まで取得

    お疲れ様です 現在時刻をミリ秒まで取得がしたいです。 今はtime_tを使って秒までは取得したのですがミリ秒は構造体にないらしく同じようにとってはこれないのでしょうか? また別のやり方だとどんなのがあるか教えてください。 現在は下記のように取得してyyyymmddhhmmssの形を作ってます。 これをyyyymmddhhmmsssssのようにミリ秒を増やしたたいのです。 長くなってしまいましたがよろしくお願いします time_t timer; time(&timer);/* 現在の時刻を取得 */ struct tm *local; local =localtime(&timer);/* 地方時の構造体に変換 */ CString time; //CString用の時間 time.Format("%4d%02d%02d%02d%02d%02d" ,local->tm_year + 1900,/* 年 */ local->tm_mon+1,/*月は0から始まるので1を+*/ local->tm_mday,/* 日 */ local->tm_hour,/* 時 */ local->tm_min,/* 分 */ local->tm_sec);/* 秒 */

  • ただいまの時刻は・・・

    ラジオのアナウンサー、パーソナリティーのおしゃべりの中で時刻のお知らせがあります。いろいろな表現があるのですが、私が?って思うこと聞いて下さい。例えば「ただいまの時刻は3時30分を20秒ほどまわりました。」ということです。秒単位まで知らせているのに「ほど」をつけるのはおかしいような・・・今までは「・・・3時30分23秒です」このように秒までしっかり表現されていたと思います。ラジオの場合時計を見るかわりに耳から聞く正確な情報のひとつだと思います。全国ネット系の放送では聞いたことがありませんから私の地域だけかもしれません。この時刻の表現の仕方大丈夫でしょうか?

専門家に質問してみよう