2015-02-24 42 views
0

我的老師給了我一個挑戰:Java鍵碼194,關鍵是什麼?

他告訴我編寫一個Java程序,它捕獲鍵入的鍵值,並返回鍵碼,並說出他按下的鍵。

我的問題是,他莫名其妙鍵入以下順序:

194 131 194 130 194 135 

我不知道如何重現此!代碼194沒有密鑰,這很奇怪,因爲他說他使用了數字鍵盤,但即使如此,我也找不到這樣做的方法。任何幫助?

編輯: 以下是代碼

public void nativeKeyPressed(NativeKeyEvent e) 
{ 
    System.out.println(NativeKeyEvent.getKeyText(131)+" "+NativeKeyEvent.getKeyText(130)+" "+NativeKeyEvent.getKeyText(135)); 
    //17 = ctrl 
    //18 = alt 
    //113 = F2 
    //32 = space 
    if (!writingSupressed) ///DACA NU O BAGAT CODU ALA 
    { 
     if (checkCode(e.getKeyCode())) //DACA CODUL A FOST INTRODUS 
     { 
      new Thread(new Runnable() { 
       public void run() { 
        KiraUtils.dialog("Hello, you are protected."); 
       } 
      }).start(); 
      writingSupressed=true; 
      ClientMode.dm.cleanBuffer(); 
     } 

     if (Character.isLetter((char)e.getKeyCode())) 
     { 
      if (isCaps) 
      { 
       ClientMode.dm.log(e.getKeyCode()); 
      } 
      else 
      { 
       ClientMode.dm.log(e.getKeyCode()+32); 
      } 

     } 
     else 
     { 
      if (e.getKeyCode()==20) 
      { 
       if (!capsPressed) 
       { 
        capsPressed=true; 
        isCaps=!isCaps; 
        ClientMode.dm.log(20); 
       } 
      } 
      else 
      if (e.getKeyCode()==17) 
      { 
       if (!ctrlPressed) 
       { 
        ctrlPressed=true; 
        ClientMode.dm.log(17); 
       } 
      } 
      else if (e.getKeyCode()==16) 
      { 
       if (!shiftPressed) 
       { 
        shiftPressed=true; 
        isCaps=!isCaps; 
        ClientMode.dm.log(16); 
       } 
      } 
      else if (e.getKeyCode()==18) 
      { 
       if (!altPressed) 
       { 
        altPressed=true; 
        ClientMode.dm.log(18); 
       } 
      } 
      else 
      { 
       ClientMode.dm.log(e.getKeyCode()); 
      } 
     } 

    } 
    else //DACA O BAGAT CODU ALA 
    { 
     if (checkCode(e.getKeyCode())) 
     { 
      new Thread(new Runnable() { 
       public void run() { 
        KiraUtils.dialog("You are no longer protected."); 
       } 
      }).start(); 
      writingSupressed=false; 
     } 
    } 
} 

但是按下Alt + 194將輸出18(ALT),然後1,9和4

+0

顯示我們的代碼。 – 2015-02-24 16:48:45

+0

試試這個:按下Alt,點擊1,點擊9.點擊4,釋放ALT。所有數字都必須在數字鍵盤上按下。 – talex 2015-02-24 16:51:00

+1

┬嗨,我是符號 – 2015-02-24 16:53:26

回答

0

Java是UTF-8這樣的ASCII碼194 131是UTF-8微型標誌(時髦的u),194 130是尖銳的重音,194 135是大寫字母c和cedilla。

來源: http://www.utf8-chartable.de/

鍵入微符號 Alt鍵0181 Alt鍵230

+0

會放棄它,希望這一個會是它 – KiralyCraft 2015-02-25 05:05:08

+0

知道它以某種方式,通過改變鍵盤佈局!哈哈,那很棘手!感謝指導我進入UTF-8,這給了我這個想法 – KiralyCraft 2015-02-25 19:45:47