Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.01;
Скачать: CL | DM;

Вниз

System Menu   Найти похожие ветки 

 
ZEE ©   (2002-06-12 15:12) [0]

Как программно заставить выпасть системное меню формы (как при клике на иконке в заголовке).
И еще может ли это меню появится если у формы вобще нет заголовка?
Заранее спасибо всем.


 
Song ©   (2002-06-12 17:06) [1]

WM_NCHITTEST


 
ZEE ©   (2002-06-14 02:34) [2]

Да,использование WM_NCHITTEST для перетаскивания окна вместо заголовка за любое место я знаю, а как все-таки заставить выпасть системное меню?


 
Song ©   (2002-06-14 08:40) [3]

Использование WM_NCHITTEST преднозначено для определения операции с неклиентской областью формы, т.е. Вам нужно определить что клик сделан на заголовке и выпасть TPopup

>>для перетаскивания окна вместо заголовка за любое место я знаю
Да, это можно сделать испольуюя это сообщение, но только для этого WM_NCCHITTEST не предназначен.


 
ZEE ©   (2002-06-16 01:35) [4]

Хорошо, так можно увидеть пример (кусок кода) по "выпадению" системного Popup-а ?...


 
~Rand~ ©   (2002-06-16 08:47) [5]

Удалено модератором


 
Song ©   (2002-06-16 11:18) [6]

А какие сложности-то ?

private
Procedure WhetherUserClicksOnTheCaption(Var Msg:TMessage); message WM_NCRBUTTONDOWN;
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

Procedure TForm1.WhetherUserClicksOnTheCaption(Var Msg:TMessage);
Begin
With Msg Do IF WParam=HTCAPTION then PopupMenu1.Popup(LoWord(LParam),HiWord(LParam));
End;


 
RAK   (2002-06-16 11:23) [7]

WM_NCHITTEST PONAL!!!


 
ZEE ©   (2002-06-19 14:59) [8]

2 Song: Мне PopupMenu1 не надо (так мы и сами умеем) - мне надо чтоб выпала реальная системная менюшка...

2 RAK: Да понял, понял, только вот примеров с WM_NCHITTEST не вижу...


 
Дмитрий Баранов ©   (2002-06-19 15:06) [9]

procedure TForm1.Button1Click(Sender: TObject);
var menu: HMENU;
begin
menu:=GetSystemMenu(Self.Handle, FALSE);
TrackPopUpMenu(menu, 0, 100, 100, 0, Self.Handle, nil);
end;



Страницы: 1 вся ветка

Текущий архив: 2002.07.01;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
1-1101
koks
2002-06-19 13:57
2002.07.01
переименовать модуль :((


3-898
Voldemar
2002-06-07 02:45
2002.07.01
Кол-во записей в QuickReport


14-1161
Anatoly Podgoretsky
2002-05-29 21:04
2002.07.01
Книга по BASM


3-918
agrig
2002-06-06 19:18
2002.07.01
как с помощью Install Shield создать алиас моей базы в BDE?


14-1139
Kozhanov
2002-05-21 11:33
2002.07.01
Ваше хобби