procedure TForm7.FormShortCut(var Msg: TWMKey; var Handled: Boolean); var aKey: TShortCut; aShift : TShiftState; i:integer; begin aShift:=KeyDataToShiftState(Msg.KeyData); i:=msg.CharCode; if (ssAlt in ashift)and (i=115) then halt; end; ht
在delphi中,很多窗体和控件的鼠标事件里面已经将鼠标按键状态封装好传给响应事件的函数,所以这种情况直接使用就可以,但在某些时候,我们没有这些事件可以处理时,想判断鼠标按键是否按下的状态,就需要借助API或者消息了,使用API和消息可分别应对2种不同情形: 1)使用API: GetAsyncKeyState,适合实时检测,下面代码演示判断鼠标是否按下左键 function IsMouseLButtonDown():Boolean;begin Result := (Windows.GetAs
delphi 判断是否出现滚动条 if (GetWindowlong(Stringgrid1.Handle, GWL_STYLE) and WS_VSCROLL) <> 0 then ShowMessage('Vertical scrollbar is visible!'); if (GetWindowlong(Stringgrid1.Handle, GWL_STYLE) and WS_HSCROLL) <> 0 then ShowMessage('Horiz