Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Evento Botón derecho del Ratón (https://www.clubdelphi.com/foros/showthread.php?t=56584)

chinchan 21-05-2008 14:08:26

Evento Botón derecho del Ratón
 
Hola, en un programa c++ Builder necesito pulsar con el botón derecho del ratón en un TPanel y ejecutar cierto código. ¿Qué evento genera sólo la pulasción derecha del ratón?. Gracias

dec 21-05-2008 14:15:08

Hola,

Puedes usar los eventos "OnMouseUp" y "OnMouseDown", y luego valerte de su parámetro "Button" para averiguar qué botón fue pulsado. En Delphi sería más o menos así:

Código Delphi [-]
procedure TForm1.Panel1MouseDown(Sender: TObject;
 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if (Button = mbRight) then begin
    ShowMessage('Pulsaste el botón derecho');
  end;
end;

escafandra 21-05-2008 14:28:45

Probablemente esa sea la mejor manera de hacerlo y la mas sencilla. En Builder sería así:

Código:

void __fastcall TForm1::Panel1MouseDown(TObject *Sender,
      TMouseButton Button, TShiftState Shift, int X, int Y)
{
    if (Button == mbRight)
        ShowMessage("Pulsaste el botón derecho");
}

Si lo que quieres es realmente aislar el evento único de pulsar el botón derecho del ratón, entonces revisa este mensaje de Windows: WM_RBUTTONDOWN

Lo interceptas y escribes tu código.

Saludos.

chinchan 22-05-2008 18:15:13

Ok. Muchísimas Gracias. Me habéis sido como siempre de gran ayuda


La franja horaria es GMT +2. Ahora son las 00:49:47.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi