UWSCで下記のような処理をしたいのですがコードをご教授頂いてもよろしいでしょうか?
・『a』というキーをランダムで『1回』または『2回』または『6回』押す
$a=1;
$b=2;
$c=6;
という風にして、ランダムにa~cを選び、
for文の$iをこれにして『a』を繰り返し押せばいいのだと思いますが、
UWSCというものに詳しくないため非常に困っております。
Windowsアクセサリの"メモ帳"を起動した状態で
下記のUWSスクリプトを実行してみて下さい。
CTRLWIN(GETID("メモ帳"), ACTIVATE) DIM nClick[] = 1, 2, 6 FOR count = 1 TO nClick[INT(RANDOM(3))] KBD(VK_A) NEXT KBD(VK_RETURN)
実行する度に、メモ帳の行に
"a"が1文字か2文字か6文字記入されると思います。
スクリプトの意味が解らなければその旨仰って下さい。
解説いたします。
この質問でUWSCを知りました。便利そうですね。
ご要望の内容ですが、3通り均等の確率でよければ下記の通りとなります。
I = RANDOM(3)
IF I < 1 THEN
J = 1
ELSEIF I < 2 THEN
J = 2
ELSE
J = 6
ENDIF
FOR I = 1 TO J
KBD(VK_A)
NEXT
この度はご回答ありがとう御座います。
実行してみたのですが、THEN: SyntaxError 2行目:IF < 1 THEN
というエラーになってしまったようです。
(ですが、既にこの質問は解決したのでご心配なく)
SyntaxErrorとの事なのでスペルミスかと思うのですが、
こちらでは正常に動作しています。コピー、ペーストされたでしょうか?
解決済みとの事なので参考までに。
Windowsアクセサリの"メモ帳"を起動した状態で
下記のUWSスクリプトを実行してみて下さい。
CTRLWIN(GETID("メモ帳"), ACTIVATE) DIM nClick[] = 1, 2, 6 FOR count = 1 TO nClick[INT(RANDOM(3))] KBD(VK_A) NEXT KBD(VK_RETURN)
実行する度に、メモ帳の行に
"a"が1文字か2文字か6文字記入されると思います。
スクリプトの意味が解らなければその旨仰って下さい。
解説いたします。
ありゃ、リロードし忘れていて
回答かぶっちゃいましたね…済みません…orz。
この度はご回答ありがとう御座います。
希望通りの動作をしてくれましたので、ベストアンサーにさせていただきます。
本当に素晴らしいです。
こんな感じで、どうでしょうね。
// 送るキー(文字列)を定義 DIM str[] = "a", "aa", "aaaaaa" // キーを送るウィンドウのIDを取得 id = GETID(...) // ランダムに選ぶ i = RANDOM(Length(str)) // 文字列を送信する SENDSTR(id, str[i])
以下のページを見ながら、想像で書いてます m(_ _)m
http://papuu.jp/wiki/index.php?%A5%BD%A5%D5%A5%C8%2FUWSC
http://www.uwsc.info/sample.html
この度はご回答ありがとう御座います。
文字列を送信するやり方もあるのですね。参考にさせて頂きます。
ありゃ、リロードし忘れていて
2012/08/23 15:29:25回答かぶっちゃいましたね…済みません…orz。
この度はご回答ありがとう御座います。
2012/08/23 16:07:11希望通りの動作をしてくれましたので、ベストアンサーにさせていただきます。
本当に素晴らしいです。