1<HTML 2><HEAD 3><TITLE 4>SDL_KeyboardEvent</TITLE 5><META 6NAME="GENERATOR" 7CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ 8"><LINK 9REL="HOME" 10TITLE="SDL Library Documentation" 11HREF="index.html"><LINK 12REL="UP" 13TITLE="SDL Event Structures." 14HREF="eventstructures.html"><LINK 15REL="PREVIOUS" 16TITLE="SDL_ActiveEvent" 17HREF="sdlactiveevent.html"><LINK 18REL="NEXT" 19TITLE="SDL_MouseMotionEvent" 20HREF="sdlmousemotionevent.html"></HEAD 21><BODY 22CLASS="REFENTRY" 23BGCOLOR="#FFF8DC" 24TEXT="#000000" 25LINK="#0000ee" 26VLINK="#551a8b" 27ALINK="#ff0000" 28><DIV 29CLASS="NAVHEADER" 30><TABLE 31SUMMARY="Header navigation table" 32WIDTH="100%" 33BORDER="0" 34CELLPADDING="0" 35CELLSPACING="0" 36><TR 37><TH 38COLSPAN="3" 39ALIGN="center" 40>SDL Library Documentation</TH 41></TR 42><TR 43><TD 44WIDTH="10%" 45ALIGN="left" 46VALIGN="bottom" 47><A 48HREF="sdlactiveevent.html" 49ACCESSKEY="P" 50>Prev</A 51></TD 52><TD 53WIDTH="80%" 54ALIGN="center" 55VALIGN="bottom" 56></TD 57><TD 58WIDTH="10%" 59ALIGN="right" 60VALIGN="bottom" 61><A 62HREF="sdlmousemotionevent.html" 63ACCESSKEY="N" 64>Next</A 65></TD 66></TR 67></TABLE 68><HR 69ALIGN="LEFT" 70WIDTH="100%"></DIV 71><H1 72><A 73NAME="SDLKEYBOARDEVENT" 74></A 75>SDL_KeyboardEvent</H1 76><DIV 77CLASS="REFNAMEDIV" 78><A 79NAME="AEN4011" 80></A 81><H2 82>Name</H2 83>SDL_KeyboardEvent -- Keyboard event structure</DIV 84><DIV 85CLASS="REFSECT1" 86><A 87NAME="AEN4014" 88></A 89><H2 90>Structure Definition</H2 91><PRE 92CLASS="PROGRAMLISTING" 93>typedef struct{ 94 Uint8 type; 95 Uint8 state; 96 SDL_keysym keysym; 97} SDL_KeyboardEvent;</PRE 98></DIV 99><DIV 100CLASS="REFSECT1" 101><A 102NAME="AEN4017" 103></A 104><H2 105>Structure Data</H2 106><DIV 107CLASS="INFORMALTABLE" 108><A 109NAME="AEN4019" 110></A 111><P 112></P 113><TABLE 114BORDER="0" 115CLASS="CALSTABLE" 116><TBODY 117><TR 118><TD 119ALIGN="LEFT" 120VALIGN="TOP" 121><TT 122CLASS="STRUCTFIELD" 123><I 124>type</I 125></TT 126></TD 127><TD 128ALIGN="LEFT" 129VALIGN="TOP" 130><TT 131CLASS="LITERAL" 132>SDL_KEYDOWN</TT 133> or <TT 134CLASS="LITERAL" 135>SDL_KEYUP</TT 136></TD 137></TR 138><TR 139><TD 140ALIGN="LEFT" 141VALIGN="TOP" 142><TT 143CLASS="STRUCTFIELD" 144><I 145>state</I 146></TT 147></TD 148><TD 149ALIGN="LEFT" 150VALIGN="TOP" 151><TT 152CLASS="LITERAL" 153>SDL_PRESSED</TT 154> or <TT 155CLASS="LITERAL" 156>SDL_RELEASED</TT 157></TD 158></TR 159><TR 160><TD 161ALIGN="LEFT" 162VALIGN="TOP" 163><TT 164CLASS="STRUCTFIELD" 165><I 166>keysym</I 167></TT 168></TD 169><TD 170ALIGN="LEFT" 171VALIGN="TOP" 172>Contains key press information</TD 173></TR 174></TBODY 175></TABLE 176><P 177></P 178></DIV 179></DIV 180><DIV 181CLASS="REFSECT1" 182><A 183NAME="AEN4038" 184></A 185><H2 186>Description</H2 187><P 188><SPAN 189CLASS="STRUCTNAME" 190>SDL_KeyboardEvent</SPAN 191> is a member of the <A 192HREF="sdlevent.html" 193><SPAN 194CLASS="STRUCTNAME" 195>SDL_Event</SPAN 196></A 197> union and is used when an event of type <TT 198CLASS="LITERAL" 199>SDL_KEYDOWN</TT 200> or <TT 201CLASS="LITERAL" 202>SDL_KEYUP</TT 203> is reported.</P 204><P 205>The <TT 206CLASS="STRUCTFIELD" 207><I 208>type</I 209></TT 210> and <TT 211CLASS="STRUCTFIELD" 212><I 213>state</I 214></TT 215> actually report the same information, they just use different values to do it! A keyboard event occurs when a key is released (<TT 216CLASS="STRUCTFIELD" 217><I 218>type</I 219></TT 220>=<TT 221CLASS="LITERAL" 222>SDK_KEYUP</TT 223> or <TT 224CLASS="STRUCTFIELD" 225><I 226>state</I 227></TT 228>=<TT 229CLASS="LITERAL" 230>SDL_RELEASED</TT 231>) and when a key is pressed (<TT 232CLASS="STRUCTFIELD" 233><I 234>type</I 235></TT 236>=<TT 237CLASS="LITERAL" 238>SDL_KEYDOWN</TT 239> or <TT 240CLASS="STRUCTFIELD" 241><I 242>state</I 243></TT 244>=<TT 245CLASS="LITERAL" 246>SDL_PRESSED</TT 247>). The information on what key was pressed or released is in the <A 248HREF="sdlkeysym.html" 249><SPAN 250CLASS="STRUCTNAME" 251>keysym</SPAN 252></A 253> structure.</P 254><DIV 255CLASS="NOTE" 256><BLOCKQUOTE 257CLASS="NOTE" 258><P 259><B 260>Note: </B 261>Repeating <TT 262CLASS="LITERAL" 263>SDL_KEYDOWN</TT 264> events will occur if key repeat is enabled (see <A 265HREF="sdlenablekeyrepeat.html" 266><TT 267CLASS="FUNCTION" 268>SDL_EnableKeyRepeat</TT 269></A 270>).</P 271></BLOCKQUOTE 272></DIV 273></DIV 274><DIV 275CLASS="REFSECT1" 276><A 277NAME="AEN4064" 278></A 279><H2 280>See Also</H2 281><P 282><A 283HREF="sdlevent.html" 284><SPAN 285CLASS="STRUCTNAME" 286>SDL_Event</SPAN 287></A 288>, 289<A 290HREF="sdlkeysym.html" 291><SPAN 292CLASS="STRUCTNAME" 293>SDL_keysym</SPAN 294></A 295>, 296<A 297HREF="sdlenablekeyrepeat.html" 298><TT 299CLASS="FUNCTION" 300>SDL_EnableKeyRepeat</TT 301></A 302>, 303<A 304HREF="sdlenableunicode.html" 305><TT 306CLASS="FUNCTION" 307>SDL_EnableUNICODE</TT 308></A 309></P 310></DIV 311><DIV 312CLASS="NAVFOOTER" 313><HR 314ALIGN="LEFT" 315WIDTH="100%"><TABLE 316SUMMARY="Footer navigation table" 317WIDTH="100%" 318BORDER="0" 319CELLPADDING="0" 320CELLSPACING="0" 321><TR 322><TD 323WIDTH="33%" 324ALIGN="left" 325VALIGN="top" 326><A 327HREF="sdlactiveevent.html" 328ACCESSKEY="P" 329>Prev</A 330></TD 331><TD 332WIDTH="34%" 333ALIGN="center" 334VALIGN="top" 335><A 336HREF="index.html" 337ACCESSKEY="H" 338>Home</A 339></TD 340><TD 341WIDTH="33%" 342ALIGN="right" 343VALIGN="top" 344><A 345HREF="sdlmousemotionevent.html" 346ACCESSKEY="N" 347>Next</A 348></TD 349></TR 350><TR 351><TD 352WIDTH="33%" 353ALIGN="left" 354VALIGN="top" 355>SDL_ActiveEvent</TD 356><TD 357WIDTH="34%" 358ALIGN="center" 359VALIGN="top" 360><A 361HREF="eventstructures.html" 362ACCESSKEY="U" 363>Up</A 364></TD 365><TD 366WIDTH="33%" 367ALIGN="right" 368VALIGN="top" 369>SDL_MouseMotionEvent</TD 370></TR 371></TABLE 372></DIV 373></BODY 374></HTML 375>