Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Выравнивание пункта меню по правому краю окна.

10K
26 февраля 2006 года
MaxIkar
11 / / 16.10.2005
Мне нравится, как сделан пункт меню "Справка" в Total Commander - выравнян по правому краю.
Как сделать точно так же самому?
Нашел дельфовский способ, но адаптировать его под BCB не смог:
#1

uses
Windows;

procedure TForm1.FormCreate(Sender: TObject);
begin
ModifyMenu(yourMainMenu.Handle, 0, MF_BYPOSITION or MF_POPUP or MF_HELP, yourMenuItem.Handle, 'yourCaption');
end;

#2

var
MMI: TMenuItemInfo;
MyMenu: hMenu;
Buffer: array[0..79] of Char;
begin
MyMenu := GetMenu(Handle);
// Handle is the handle of the form that contains the menu
MMI.cbSize := SizeOf(MMI);
MMI.fMask := MIIM_TYPE;
MMI.dwTypeData := Buffer;
MMI.cch := SizeOf(Buffer);
GetMenuItemInfo(MyMenu, 1, True, MMI);
// (..., 1, True, ...) means that help is the second menu item.
MMI.fType := MMI.fType or MFT_RIGHTJUSTIFY;
SetMenuItemInfo(MyMenu, 1, True, MMI);
end;
1
26 февраля 2006 года
kot_
7.3K / / 20.01.2000
Цитата:
Originally posted by MaxIkar
Мне нравится, как сделан пункт меню "Справка" в Total Commander - выравнян по правому краю.
Как сделать точно так же самому?
Нашел дельфовский способ, но адаптировать его под BCB не смог:
#1

uses
Windows;

procedure TForm1.FormCreate(Sender: TObject);
begin
ModifyMenu(yourMainMenu.Handle, 0, MF_BYPOSITION or MF_POPUP or MF_HELP, yourMenuItem.Handle, 'yourCaption');
end;

#2

var
MMI: TMenuItemInfo;
MyMenu: hMenu;
Buffer: array[0..79] of Char;
begin
MyMenu := GetMenu(Handle);
// Handle is the handle of the form that contains the menu
MMI.cbSize := SizeOf(MMI);
MMI.fMask := MIIM_TYPE;
MMI.dwTypeData := Buffer;
MMI.cch := SizeOf(Buffer);
GetMenuItemInfo(MyMenu, 1, True, MMI);
// (..., 1, True, ...) means that help is the second menu item.
MMI.fType := MMI.fType or MFT_RIGHTJUSTIFY;
SetMenuItemInfo(MyMenu, 1, True, MMI);
end;


Есть раздел для начинающих, есть пример как не надо. Дык не обижайся, тема закрыта.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог