比如在OnMouseDown里吧,有一个参数是Button,他代表了是由哪个鼠标按键引发的这个事件,而Shift则说明了此时按键们的状态(不但包括左键,右键,还有alt,ctrl等键盘按键,具体可以看TShiftState的定义,在Classes.hpp里)。
代码如下,如果显示L,表示左键按下了,显示R,表示右键按下了,都显示就都按下了。
void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{
AnsiString sButtonState;
if (Shift.Contains(ssLeft))
{
sButtonState += "L";
}
if (Shift.Contains(ssRight))
{
sButtonState += "R";
}
Caption = sButtonState;
}
代码如下,如果显示L,表示左键按下了,显示R,表示右键按下了,都显示就都按下了。
void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{
AnsiString sButtonState;
if (Shift.Contains(ssLeft))
{
sButtonState += "L";
}
if (Shift.Contains(ssRight))
{
sButtonState += "R";
}
Caption = sButtonState;
}