Saludos,
Recientemente encontré un código para implementar el uso de la rueda del mouse (wheel) en los Grid y otros componentes. El código estaba en Pascal y como trabajo con C++ lo traduje quedando algo asi
Código Pascal en el sitio web
Código Delphi
[-]
procedure TForm1.ApplicationEvents1Message
(var Msg: TMsg; var Handled: Boolean) ;
var
i: SmallInt;
begin
if Msg.message = WM_MOUSEWHEEL then
begin
Msg.message := WM_KEYDOWN;
Msg.lParam := 0;
i := HiWord(Msg.wParam) ;
if i > 0 then
Msg.wParam := VK_UP
else
Msg.wParam := VK_DOWN;
Handled := False;
end;
end;
Una ves traducido quedó algo asi.
Código C++
Código:
void __fastcall TForm3::ApplicationEvents1Message(tagMSG &Msg,
bool &Handled)
{
int i;
if (Msg.message == WM_MOUSEWHEEL)
{
Msg.message = WM_KEYDOWN;
Msg.lParam = 0;
i = HIWORD(Msg.wParam);
if (i == 120)
{
Msg.wParam = VK_UP;
}
else
{
Msg.wParam = VK_DOWN;
}
Handled = false;
}
}
Como pueden ver en el código en Pascal no me funcionaba bien con el
i > 0 porque
i solo obtenía dos valores
65416 cuando se usaba el
Wheel Down y
120 cuando se usaba el
Wheel Up. Por lo que lo modifique en mi código en c++ poniendo
i == 120
La pregunta concreta es, eso esta bien,
I siempre obtiene esos valores en c++ o pueden variar, en caso de variar debería poner la condición
i > algo, pues cual seria ese algo?
Gracias de antemano por su tiempo
__________________
Nunca esta de más volver a ver la
"Guia de Estilo" o
"La Otra Guia de Estilo". Recuerda siempre usar los
"Tags" para una mejor legibilidad de tu código.
Cuando miras fijamente al abismo, este te devuelve la mirada
oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_
oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_
oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_
oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_
oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_
ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_
________________________________________________________________________________