今、RPG風の、途中で色が付いたりしたメッセージを表示する、プログラムを作っています。
このメッセージの処理を行う部分で、タイトルのようなエラーが発生するみたいですが、これは主にどういう原因で起き、深刻なエラーなのかを教えていただきたいです(ヘルプに載ってない)。
あと、次のプログラムを用いて、キーボードの判定をスレッドで行っていますが、うまく動いていないようです(書かれているもの以外に矢印キーなどもテストしました)。スレッドは起動時に同時に2つ開始し、片方をゲーム処理、そしてもうひとつをキーボードの判定に使用しています(キー状態の取得、スレッドの開始法、スレッドを割り当てる関数(?)の記述、いずれもHelp Centerのものを参考)。
[ここをクリックすると内容が表示されます]
コード: 全て選択
'スレッド
Function Keyboard_Status(dwDummy2 As Dword)
While(IsWindow(hMainWnd))
'入力キーの判定
Select case nowPos
Case -2
Case -1
Case 0
Case 1
Case 2
Case 3
Case 4
Case 5
Case 6
Case 7
Case 8
Case 9
Case 10
Case 11
Case 12
Case 13
Case 14
If PressKey(VK_SPACE) = TRUE Then
nowPos = -2
End If
End Select
Sleep(1)
Wend
End Function
'キー状態の取得
Function PressKey(code As Long) As BOOL
If (GetAsyncKeyState(code) And &H8000) = 1 Then
PressKey = TRUE
Else
PressKey = FALSE
End If
End Function