Dev - C++ - Obtener las coordenadas del cursor del ratón en el mensaje WM PAINT de un programa windows en de c++

   
Vista:

Obtener las coordenadas del cursor del ratón en el mensaje WM PAINT de un programa windows en de c++

Publicado por Jose vicente (1 intervención) el 25/01/2016 21:30:57
Quiero pintar una línea en un programa con dev c++ utilizando la API de windows, es decir, un programa windows.
Y quiero que la línea termine en el cursor del ratón.
Quiero poner la función de pintado en el mensaje WM PAINT pero no se la manera de obtener las coordenadas del cursor del ratón en el mensaje WM PAINT.

Mi pregunta es: Como puedo obtener las coordenadas del cursor del ratón en WM PAINT??


Por otro lado en el mensaje WM MOUSEMOVE con una estructura POINTS:

POINTS vPuntos;
//en el Switch de mensajes, en WM MOUSEMOVE:
vPuntos = MAKEPOINTS(lparam);
//aki obtengo una estructura con las coordenadas del cursor del raton y llamando a la función de pintado se pinta la linea, pero se acumulan las líneas en la ventana al no borrarse las anteriores.

Mi pregunta es: Como puedo obtener las coordenadas del cursor del ratón en WM PAINT??
Para pintar la línea y que se actualice.?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Obtener las coordenadas del cursor del ratón en el mensaje WM PAINT de un programa windows en de c++

Publicado por agustin (306 intervenciones) el 25/01/2016 22:39:47
Esto te puede valer: https://msdn.microsoft.com/en-us/library/windows/desktop/ms648390(v=vs.85).aspx
Lo ideal seria usar el evento onmousedown para obtener las coordenadas al apretar y onmouseup para obtener las coordenadas al soltar y con eso pintas la línea sin problema. Si quieres que se pinte una línea si o si en onpaint puedes usar mejor onmousemove y lo que haces es que cada vez que muevas el cursor con el botón pulsado pintas la línea anterior con el color de fondo si es un fondo de un solo color. Yo tenía algo así hecho pero para c++Builder, si te interesa mañana lo busco y lo pongo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar