Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Добавляем пункты в системное меню Windows

Delphi , Компоненты и Классы , Меню

Добавляем пункты в системное меню Windows

Оформил: DeeCo

Автор: MAD Rodrguez

Вы, наверное, задавались вопросом, почему системное меню постоянно одно и тоже ? Пример показывает, как добавить туда такие пункты как "About" или "Information", или что-нибудь ещё.

Совместимость: Delphi 3.x (или выше)

Нам понадобится две вещи, первая это Item ID, который может быть любым целым числом. Второе это Описание(Caption) для нашего пункта меню. Нам понадобится также процедура, которая будет принимать сообщения Window для определения нажатия на наш пункт меню.

unit OhYeah;
interface uses SysUtils,
  WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs,
  Menus;
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender:
      TObject);
  private {Private
  declarations} public {Public declarations}
    procedure WinMsg(var Msg:
      TMsg; var Handled: Boolean);
    procedure DoWhatEever;
  end;
var
  Form1: TForm1;
implementation{$R *.DFM}const
  ItemID = 99; // ID номер для пункта меню.  Может быть  любым

procedure Tform1.WinMsg(var Msg: TMsg; var Handled: Boolean);
begin
  if
    Msg.Message = WM_SYSCOMMAND then
    if Msg.WParam = ItemID then
      DoWhatEver;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnMessage := WinMsg;
  AppendMenu(GetSystemMenu(Form1.Handle, False), MF_SEPARATOR, 0, '');
  AppendMenu(GetSystemMenu(Form1.Handle,
    False), MF_BYPOSITION, ItemID, '&My menu');
  AppendMenu(GetSystemMenu
    (Application.Handle, False), MF_SEPARATOR, 0, '');
  AppendMenu(GetSystemMenu(Application.Handle, False),
    MF_BYPOSITION, ItemID, 'My menu minimized');
end;

procedure TForm1.DoWhatEver;
begin
  Exit; // Вы можете добавить здесь всё, что угодно
end;
end.

Добавление пунктов в системное меню Windows позволяет пользователю расширить функциональность операционной системы и выполнить различные задачи с помощью созданных пунктов меню.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Меню ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-21 13:21:24/0.0052859783172607/1