2014-10-28 79 views
1

我目前正在開發一款小遊戲。在開始遊戲之前,我有一個JFrame,您可以在其中設置控制器。要做到這一點即時通訊使用Java內置keylistener,它很好。 即時開始遊戲並且您所做的設置不起作用時會出現問題。不同鍵碼之間的轉換

遊戲使用lwjgl api和slick2d api以及當我檢查按鈕按鈕時的鍵碼與keylistener中構建的鍵碼不同。

http://slick.ninjacave.com/javadoc/constant-values.html#org.newdawn.slick.Input.KEY_DOWN

的鍵碼華而不實的用途清單。正如你可以看到它從這個名單

http://www.cambiaresearch.com/articles/15/javascript-char-codes-key-codes

是有沒有辦法在這兩者之間轉換有什麼不同?

我試着添加一個常量,但你可能會看到它不會工作。

我很欣賞每一個答案:)

+1

這些是Javascript的關鍵代碼。與Java無關。 Java事件密鑰代碼常量封裝在類[KeyEvent](http://docs.oracle.com/javase/8/docs/api/java/awt/event/KeyEvent.html)中。 – Radiodef 2014-10-28 20:25:40

+0

好的,謝謝你的回答。 – Shroom 2014-10-28 20:28:52

+0

你仍然有同樣的問題,在可能不同的代碼之間轉換。我只是指出你正在查看Java代碼的錯誤列表。 – Radiodef 2014-10-28 20:34:20

回答

0

我現在做了一點小小的解決方案。很簡單,也許不是最有效的,但它的作品。花了一些時間,雖然

我做了一個小列表,我用於轉換。可能是一些錯誤,但它們很容易修復。

backspace    8  14 
space   32  57 
tab    9  15 
enter   13  28 
enter2   10  28 
shift   16  42 
ctrl   17  29 
alt    18  56 
pause   19  197 
caps   20  58 
escape   27  1 
pgup   33  201 
pgdo   34  209 
end    35  207 
home   36  199 
left   37  203 
up   38  200 
right   39  205 
down   40  208 
insert2   155  210 
delete   127  211 
0   48  11 
1   49  2 
2   50  3 
3   51  4 
4   5  5 
5   53  6 
6   54  7 
7   55  8 
8   56  9 
9   57  10 
A   65  30 
B   66  48 
C   67  46 
D   68  32 
E   69  18 
F   70  33 
G   71  34 
H   72  35 
I   73  23 
J   74  36 
K   75  37 
L   76  38 
M   77  50 
N   78  49 
O   79  24 
P   80  25 
Q   81  16 
R   82  19 
S   83  31 
T   84  20 
U   85  22 
V   86  47 
W   87  17 
X   88  45 
Y   89  21 
Z   90  44 
Å   16777413 27 
Ä   16777412 40 
Ö   16777430 41 
LWK    91  219 
RWK    92  220 
WINDOWS   524  219 
SELECT   93  221 
NUMPAD0   96  82 
NUMPAD1   97  79 
NUMPAD2   98  80 
NUMPAD3   99  81 
NUMPAD4   100  75 
NUMPAD5   101  76 
NUMPAD6   102  77 
NUMPAD7   103  71 
NUMPAD8   104  72 
NUMPAD9   105  73 
MULTIPLY  106  55 
ADD    107  78 
SUBTRACT  109  74 
DECIMAL   110  83 
DIVIDE   111  181 
F1   112  59 
F2   113  60 
F3   114  61 
F4   115  62 
F5   116  63 
F6   117  64 
F7   118  65 
F8   119  66 
F9   120  67 
F10    121  68 
F11    122  87 
F12    123  88 
F13   124  100 
F14   125  101 
F15   126  102 
NUMLOCK   144  69 
SCROLLOCK2  145  70 
SEMICOLON  186  39 
EQUALSIGN  187  13 
COMMA   188  51 
COMMA2   44  51 
DASH   189  12 
PERIOD   190  52 
PERIOD2   46  52 
FORWARDSLASH  191  53 
GRAVE   192  41 
OPENBRACKET   219  26 
BACKSLASH  220  43 
CLOSEBRAKET   221  27 
SINGLEQUOTE   222  40 
§   16777383 43 
LESS   153  -1 
DEADACUTE  129  -1 
PLUS   521  13 
MINUS   45  12 
DeadDiaeresis  135  144