Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.018 c
14-77557
Sergik_81
2002-05-20 08:04
2002.06.24
Буфер и резидентная программа


7-77654
DANTIST
2002-03-23 17:44
2002.06.24
Как мне отлавливать переключение раскладки клавиатуры??


3-77263
Alik Chu
2002-05-30 10:43
2002.06.24
Мужики, ОЧЕНЬ нужен DbTreeView!!! Помогите!


14-77573
Kozhanov
2002-05-20 15:12
2002.06.24
Гуру - откликнись !


1-77481
First_May
2002-06-07 12:19
2002.06.24
Excel




   Наверх