スタートメニューを任意の位置にポップアップさせる
|
スタートメニューのポップアップは、
procedure PopupStartMenu;
var hTaskBar: Integer;
begin
hTaskBar:= FindWindow(PChar('Shell_TrayWnd'), nil);
SetForegroundWindow(hTaskBar);
PostMessage(hTaskBar, WM_USER + $0104, 0, 0);
end;
でOK。
表示されたメニューを MoveWindow で強制的に動かすには、
procedure MoveStartMenu(Point: TPoint);
var hStartMenu: Integer;
OldRect: TRect;
begin
hStartMenu:=FindWindow('#32768',nil);
GetWindowRect(hStartMenu, OldRect);
MoveWindow(hStartMenu,
Point.X, Point.Y,
OldRect.Right-OldRect.Left, OldRect.Bottom-OldRect.Top,
True);
end;
詳しくはスレッドを追って下さい。 |
|