Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

У TMainMenu можно изменить высоту? [D7, WinXP]


HF-Trade ©   (2005-01-10 11:18:00) 

Народ, подскажите плз. У компонента TMainMenu можно изменить высоту?


HF-Trade   (2005-01-12 06:00:00) [1]


> Cobalt

Еще раз...

Note

Use images that are 16 by 16 pixels for proper display in the menu. Although you can use other sizes for the menu images, alignment and consistency problems may result when using images greater than or smaller than 16 by 16 pixels.

При использовании в ОСНОВНОМ меню битмапов больше 16*16 пикселей
ВЫСОТА ОСНОВНОГО меню не меняется.

Как ее изменить?


Cobalt   (2005-01-11 19:04:00) [2]

Рекомендую:
Открывай файл "C:\Program Files\Common Files\Borland Shared\MSHelp\WIN32.HLP", в нём открываешь статью "Menus" и читаешь внимательно.

P.S. Навигация по тексту вперёд и назад - вверху окна кнопки " >>" и " <<".


HF-Trade   (2005-01-11 12:51:00) [3]

ПАМАЖИТЕ...плиззз... по [8].
Там в TMainMenu.pas есть процедура ONDrawItem and ONAdvancedDrawItem. Неужто ни кто не пользовался?


HF-Trade   (2005-01-10 15:18:00) [4]


> Gero ©   (10.01.05 13:32) [7]
> OnMeasureItem?


У самого меню, ширина под объекты меняется, а высота нет...
Почему???...

У подменю меняется и ширина и высота.

Область канвы не увеличилась к сожалению.(Я думал она как нить пропорционально связана с шириной\высотой).
Ее можно как нить увеличить?


Gero   (2005-01-10 13:32:00) [5]

OnMeasureItem?


HF-Trade   (2005-01-10 13:20:00) [6]


> Kerk ©   (10.01.05 11:36) [1]
> у компонента TMainMenu нельзя изменить высоту.. он квадратный..

ПереФразирую ;)
Предметам MainMenu Можно изменять высоту?
Хочу втавить иконки с битмапов напротив пунктов меню дык че там нет возможности битмапы наманые отрисовать, или они будут ужаты до заданного размера и с эти ни че не поделать?
Я так понимаю высота MainMenu напрямую с этим связана?


TUser   (2005-01-10 12:27:00) [7]


> WhiteGuy   (10.01.05 12:05) [4]

Вот относительно полезный пример
function GetMenuHeight(Handle: hWND;
                 var Height: integer): boolean;
var R: TRect;
   H: hMENU;
begin
H:=GetMenu(Handle);
result:=H <> 0;
if result then
  result:=GetMenuItemRect(Handle,H,0,R);
if result then
  Height:=R.Bottom - R.Top;
end;

procedure TForm1.Button1Click(Sender: TObject);
var h: hMENU;
begin
 h:=GetMenu(Handle);
 ShowMessage(inttostr(h));
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 MainMenu1.Free;
end;

procedure TForm1.Button3Click(Sender: TObject);
var i: integer;
begin
 if not GetMenuHeight(Handle,i) then
   FlashWindow(Button3.Handle,true);
 ShowMessage(inttostr(i));
end;


WhiteGuy   (2005-01-10 12:05:00) [8]

2 TUser
Мужик, а ты о какой менюшке окна говоришь? О той, что слева сверху??


TUser   (2005-01-10 11:42:00) [9]

Я предположил, что речь про менюшку окна, ивините :)


TUser   (2005-01-10 11:41:00) [10]

Попробуй так

function GetMenuHeight(Handle: hWND;
                  var Height: integer): boolean;
var R: _Rect;
   H: hMENU;
begin
 H:=GetMenu(Handle);
 result:=H <> 0;
 if result then
   result:=GetMenuItemRect(Handle,H,0,@R);
 if result then
   Height:=R.Buttom - R.Top;
end;


Kerk   (2005-01-10 11:36:00) [11]

у компонента TMainMenu нельзя изменить высоту.. он квадратный..


Наверх

Титульная страница Поиск, карта сайта Написать письмо