Hola:
Necesito leer una tecla ALT_??? y ALT+Shift+???, pero desde el parametro d_keyboard_proc, de objetos gui, pero no encontre ningun ejemplo, he tratado con:
#define ALTS_Sht(X) ((X << 8) & KB_SHIFT_FLAG)
#define ALTS_Key(X) (X << 8)
#define CTRL_Key(X) (X - 'a' +1)
#define CTRL_Key(X) (X - 'a' +1)
DIALOG maindlg[] =
{
/* (proc) (x) (y) (w) (h) (fg) (bg) (key) (flags) (d1) (d2) (dp) (dp2) (dp3) */
{ d_clear_proc, 0, 0, 800, 600, 0, 46518, 0, 0, 0, 0, NULL, NULL, NULL },
{ d_menu_proc, 0, 0, 800, 600, 0, 46518, 0, 0, 0, 0, v(Principal), NULL, NULL },
{ BOX_Mapas, 8, 40, 616, 552, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL },
{ d_list_proc, 632, 16, 160, 40, 0, 65535, 0, D_CLOSE, 0, 0, v(LBTiles), NULL, NULL },
{ BOX_Tiles, 624, 56, 168, 536, 0, 21162, 0, 0, 0, 0, NULL, NULL, NULL },
{ BOX_Status, 8, 16, 616, 24, 0, 21162, 0, 0, 0, 0, NULL, NULL, NULL },
{ d_keyboard_proc, 0,0, 0, 0, 0, 0, CTRL_Key('x'), 0,0, 0, NULL, NULL, v(Salir)},
{ NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL }
};
{
/* (proc) (x) (y) (w) (h) (fg) (bg) (key) (flags) (d1) (d2) (dp) (dp2) (dp3) */
{ d_clear_proc, 0, 0, 800, 600, 0, 46518, 0, 0, 0, 0, NULL, NULL, NULL },
{ d_menu_proc, 0, 0, 800, 600, 0, 46518, 0, 0, 0, 0, v(Principal), NULL, NULL },
{ BOX_Mapas, 8, 40, 616, 552, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL },
{ d_list_proc, 632, 16, 160, 40, 0, 65535, 0, D_CLOSE, 0, 0, v(LBTiles), NULL, NULL },
{ BOX_Tiles, 624, 56, 168, 536, 0, 21162, 0, 0, 0, 0, NULL, NULL, NULL },
{ BOX_Status, 8, 16, 616, 24, 0, 21162, 0, 0, 0, 0, NULL, NULL, NULL },
{ d_keyboard_proc, 0,0, 0, 0, 0, 0, CTRL_Key('x'), 0,0, 0, NULL, NULL, v(Salir)},
{ NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL }
};
la macro CTRL_Key, funciona, pero como sería para leer ALT_D, ALT+SHIFT+D u otra cosa.
gracias...
ESB.