質問編集履歴
2
情報の追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -8,6 +8,9 @@
|
|
8
8
|
if GetWindowText(GetForegroundWindow()) == "ゲーム名":
|
9
9
|
pyautogui.press("1")
|
10
10
|
```
|
11
|
+
試したゲーム名
|
12
|
+
・セガNET麻雀MJ
|
13
|
+
・Minecraft
|
11
14
|
|
12
15
|
### 試行結果
|
13
16
|
エラーなし無反応(キー入力無し)
|
@@ -21,6 +24,31 @@
|
|
21
24
|
pyautogui.moveTo(x,y)や
|
22
25
|
pyautogui.press("キー"各種)のゲーム操作に関する部分は動作しない。
|
23
26
|
|
27
|
+
### 追記(原因予測と試行中に起こった事象)
|
28
|
+
ゲーム画面で動作しない原因が
|
29
|
+
・A[キーボード直接手入力]
|
30
|
+
・B[pyautogui.press()でのコード入力]
|
31
|
+
の違いから起こるものと考えたのですが、それを確かめるために
|
32
|
+
[キーボード直接手入力とpyautogui.press()でのコード入力の違いを検知できる方法はありますでしょうか?](https://teratail.com/questions/315047)
|
33
|
+
という質問をさせていただきAとBで違いがあることを明確にできました。
|
24
34
|
|
35
|
+
【新たに表れた問題点】
|
36
|
+
AとBの違いを検知している時に、起こった事象なのですが
|
37
|
+
```python
|
38
|
+
import keyboard
|
39
|
+
while True:
|
40
|
+
if keyboard.is_pressed("esc"):
|
41
|
+
break
|
42
|
+
# aが押されるまで待つ。
|
43
|
+
keyboard.wait("a")
|
44
|
+
print("ハードウェアキーボードの'a'が押下されました。")
|
45
|
+
```
|
46
|
+
上記の質問で教えていただいたコードなのですが、
|
47
|
+
**ゲーム画面がアクティブの時だけキーボード直接手入力が検知できない**
|
48
|
+
ということが起こりました。単に「仮想キーまたは直接キー」の違いだけではない様です。
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
|
25
53
|
改善方法はありますでしょうか?
|
26
54
|
ご教授よろしくお願いいたします。
|
1
情報の追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -15,6 +15,12 @@
|
|
15
15
|
### 原因調べた結果
|
16
16
|
おそらくゲーム自体にキーボードからの手入力と、プログラムコード操作の違いを判別している?
|
17
17
|
|
18
|
+
### その他試したこと
|
19
|
+
ゲームウインドウがアクティブの時
|
20
|
+
pyautogui.position()はポジションを取得しており正常に動作している。
|
21
|
+
pyautogui.moveTo(x,y)や
|
22
|
+
pyautogui.press("キー"各種)のゲーム操作に関する部分は動作しない。
|
18
23
|
|
24
|
+
|
19
25
|
改善方法はありますでしょうか?
|
20
26
|
ご教授よろしくお願いいたします。
|