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

Вниз

Пункт системного меню.   Найти похожие ветки 

 
Gari   (2002-04-24 09:26) [0]

Здраствуйте уважаемые господа. У меня вопрос такого содержания, если кто знает подскажите каким образом можно обработать команду системного меню. А именно я в системное меню программы всавил новый пункт, а вот как обработать событие нажатия не знаю. Подскажите пожалуйста.


 
gek ©   (2002-04-24 09:34) [1]

Ну наверное так

const
idSysMyMemu=200;

AppendMenu(GetSysteMenu(Handle,false), MF_STRING,idSysMyMemu,"КуКУ");

procedure myform.WMSyscommand(var msg:tmessage);
begin
if msg.wparam=idSysMyMemu then
showmessage("kuku");
end;


 
Gari   (2002-04-24 09:50) [2]

Что то, иак как ты написал не получается. Хотя по идее должно.


 
gek ©   (2002-04-24 10:06) [3]

type
Tmyform = class(TForm)
..........
...........
...........
private
{ Private declarations }
public
procedure WMSysCommand (var Msg: TMessage);
message wm_SysCommand;
end;

И добавить в procedure WMSysCommand
inherited;// в самом конце


 
Ally ©   (2002-04-24 10:10) [4]

> Gari

Одно из двух:

1) либо Вы забыли дописать message WM_SYSCOMMAND в объявлении процедуры:


procedure WMSysCommand(var Msg: TMessage); message WM_SYSCOMMAND;


2) либо в ее обработчике - inherited перед

if (Msg.wParam=idSysMyMemu) then ShowMessage("kuku");


то есть:

begin
inherited;
if (Msg.wParam = idSysMyMemu) then ShowMessage("kuku");
end;


3) либо и то и другое...

Удачи.


 
Gari   (2002-04-24 10:22) [5]

Все получилось , огромное спасибо. Но у меня еще вопрос за чем мы добавляем в описание процедуры следующую строку message WM_SYSCOMMAND; Для того чтобы указать тип передоваемой константы. Так ли это за ранее огромное при огромное спасибо.


 
gek ©   (2002-04-24 10:29) [6]

Описываем, что хотим обрабатывать именно
WM_SYSCOMMAND системные команды


 
Gari   (2002-04-24 10:46) [7]

Все понял. огромное спасибо.



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

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

Наверх




Память: 0.48 MB
Время: 0.014 c
1-77348
sa2002
2002-06-09 01:04
2002.06.24
потоки


7-77641
МИФИст
2002-03-29 00:48
2002.06.24
Нажатие Backspace...


1-77497
Exploited
2002-06-12 17:58
2002.06.24
Запуск программы с ключом.


4-77695
Сержик
2002-04-27 12:59
2002.06.24
Как перехватить нажатие кнопки?


7-77620
МИФИст
2002-03-22 20:35
2002.06.24
Мастера, объясните как работать с VXD...