SDL_keysym.3
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:2k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. .TH "SDL_keysym" "3" "Tue 11 Sep 2001, 23:00" "SDL" "SDL API Reference" 
  2. .SH "NAME"
  3. SDL_keysym- Keysym structure
  4. .SH "STRUCTURE DEFINITION"
  5. .PP
  6. .nf
  7. f(CWtypedef struct{
  8.   Uint8 scancode;
  9.   SDLKey sym;
  10.   SDLMod mod;
  11.   Uint16 unicode;
  12. } SDL_keysym;fR
  13. .fi
  14. .PP
  15. .SH "STRUCTURE DATA"
  16. .TP 20
  17. fBscancodefR
  18. Hardware specific scancode
  19. .TP 20
  20. fBsymfR
  21. SDL virtual keysym
  22. .TP 20
  23. fBmodfR
  24. Current key modifiers
  25. .TP 20
  26. fBunicodefR
  27. Translated character
  28. .SH "DESCRIPTION"
  29. .PP
  30. The fBSDL_keysymfR structure is used by reporting key presses and releases since it is a part of the fIfBSDL_KeyboardEventfRfR&.
  31. .PP
  32. The fBscancodefR field should generally be left alone, it is the hardware dependent scancode returned by the keyboard&. The fBsymfR field is extremely useful&. It is the SDL-defined value of the key (see fISDL Key SymsfR&. This field is very useful when you are checking for certain key presses, like so: 
  33. .PP
  34. .nf
  35. f(CW&.
  36. &.
  37. while(SDL_PollEvent(&event)){
  38.   switch(event&.type){
  39.     case SDL_KEYDOWN:
  40.       if(event&.key&.keysym&.sym==SDLK_LEFT)
  41.         move_left();
  42.       break;
  43.     &.
  44.     &.
  45.     &.
  46.   }
  47. }
  48. &.
  49. &.fR
  50. .fi
  51. .PP
  52.  fBmodfR stores the current state of the keyboard modifiers as explained in fIfBSDL_GetModStatefPfR&. The fBunicodefR is only used when UNICODE translation is enabled with fIfBSDL_EnableUNICODEfPfR&. If fBunicodefR is non-zero then this a the UNICODE character corresponding to the keypress&. If the high 9 bits of the character are 0, then this maps to the equivalent ASCII character: 
  53. .PP
  54. .nf
  55. f(CWchar ch;
  56. if ( (keysym&.unicode & 0xFF80) == 0 ) {
  57.   ch = keysym&.unicode & 0x7F;
  58. }
  59. else {
  60.   printf("An International Character&.
  61. ");
  62. }fR
  63. .fi
  64. .PP
  65.  UNICODE translation does have a slight overhead so don&'t enable it unless its needed&.
  66. .SH "SEE ALSO"
  67. .PP
  68. fIfBSDLKeyfRfR
  69. ..." created by instant / docbook-to-man, Tue 11 Sep 2001, 23:00