Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Заставить системное меню выпасть в указанном месте

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{ 
  How to popup the windows system menu? 
  Maybe you can use Keybd_event to eumlate ALT+SPACE 
  Maybe you can use a TPopupmenu. 
  But they always have some problem. 
  The method below is a perfect solution! 
  BTW: if your form has borderstyle = bsNone, Please do it like this: 
  Set forms style = bsSingle; and use the code below to set form boder: 
  SetWindowLong(Handle, GWL_STYLE,GetWindowLong(Handle, GWL_STYLE) 
  and (not WS_CAPTION) or WS_DLGFRAME or WS_OVERLAPPED); 
}

 procedure TForm1.Button1Click(Sender: TObject);
 const
   { Undocument message ID }
   WM_POPUPSYSTEMMENU = $313;
 begin
   SendMessage(Handle, WM_POPUPSYSTEMMENU, 0,
     MakeLong(Mouse.CursorPos.X, Mouse.CursorPos.Y));
 end;
Проект Delphi World © Выпуск 2002 - 2024
Автор проекта: USU Software
Вы можете выкупить этот проект.