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

Вниз

Панель задач   Найти похожие ветки 

 
pavlov   (2005-05-13 16:53) [0]

Если кликнуть правой кнопкой мыши по кнопке приложения
на панели задач, то появляется popup-меню:

Восстановить
Свернуть
Закрыть

1.Как перехватить нажатие мышкой на любой из пунктов этого меню?
2.Как в это меню добавить свои пункты?


 
DVM ©   (2005-05-13 17:04) [1]


> 1.Как перехватить нажатие мышкой на любой из пунктов этого
> меню?

Обрабатывать WM_SYSCOMMAND

> 2.Как в это меню добавить свои пункты?

//h-file
...
   void __fastcall OnSysCommand(TWMSysCommand&);
public:      // User declarations
   __fastcall TForm1(TComponent* Owner);

   BEGIN_MESSAGE_MAP
       MESSAGE_HANDLER(WM_SYSCOMMAND, TWMSysCommand, OnSysCommand);
   END_MESSAGE_MAP(TForm)

....

/cpp-file

static const SC_MY_MENU_ITEM = WM_USER + 1;
void __fastcall TForm1::FormCreate( TObject *Sender )
{
   AppendMenu( GetSystemMenu( Handle, FALSE ), MF_SEPARATOR, 0, "" );
   AppendMenu( GetSystemMenu( Handle, FALSE ),
               MF_STRING,
               SC_MY_MENU_ITEM,
               "My Menu Item" );
}
//---------------------------------------------------------------------------
void __fastcall TForm1::OnSysCommand(TWMSysCommand& msg)
{
   if(msg.CmdType == SC_MY_MENU_ITEM){
       ShowMessage("It"s my point!!!");
   }else
       TForm:: Dispatch(&msg);

}



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

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

Наверх




Память: 0.46 MB
Время: 0.051 c
10-1095063443
Weare
2004-09-13 12:17
2005.07.11
Как корректно открыть Excel, взять оттуда значение ячейки и ...


1-1119339737
pavel_guzhanov
2005-06-21 11:42
2005.07.11
Как преобразовать дату?


5-1089198820
RagE
2004-07-07 15:13
2005.07.11
не срабатывает таймер


4-1115717709
Maksimius
2005-05-10 13:35
2005.07.11
Службы Windows XP


1-1119428362
Lord Zmiy
2005-06-22 12:19
2005.07.11
Большие буквы