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

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



Память: 0.45 MB
Время: 0.032 c
10-1095163115
Sancho
2004-09-14 15:58
2005.07.11
TDataSetProvider сам делает Commit


14-1118042670
GrayHairs
2005-06-06 11:24
2005.07.11
Автоматизация внутрицехового учета.Термоэтикетки-2.


3-1117179211
AngelSaint
2005-05-27 11:33
2005.07.11
ADO, Access. ошибка при выборе по дате-времени


1-1118401758
!Trinix
2005-06-10 15:09
2005.07.11
Время


9-1112055781
Strech
2005-03-29 04:23
2005.07.11
Расчет движения автомобиля




   Наверх