相关疑难解决方法(0)

任何TControl的下拉菜单

继续这个主题:

TButton的下拉菜单

我已经写了有下拉菜单是一个通用的代码的任何 TControl,但由于某种原因,剂量按预期工作不是TPanel:

var
  TickCountMenuClosed: Cardinal = 0;
  LastPopupControl: TControl;

type
  TDropDownMenuHandler = class
  public
    class procedure MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  end;                            
  TControlAccess = class(TControl);

class procedure TDropDownMenuHandler.MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if LastPopupControl <> Sender then Exit;
  if (Button = mbLeft) and not ((TickCountMenuClosed + 100) < GetTickCount) then
  begin
    if GetCapture <> 0 then SendMessage(GetCapture, WM_CANCELMODE, 0, 0);
    ReleaseCapture;
    // SetCapture(0);
    if Sender …
Run Code Online (Sandbox Code Playgroud)

delphi delphi-7 drop-down-menu

6
推荐指数
1
解决办法
1052
查看次数

标签 统计

delphi ×1

delphi-7 ×1

drop-down-menu ×1