![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Цвет "фона" Button и MainMenu, как поменять?
den.is © (2004-09-09 00:18:00)Решил разукрасить прогу, но ни как не могу изменить цвет кнопки (не текста, а фона). Тоже самое и с компонентом MainMenu.
Возможно ли это? Может кто подскажет?
ЗЫ: ни в Faq, ни в форуме этого не нашел =(
den.is (2004-09-09 23:03:00) [1]Нда, пожалуй это проще чем писать наследника.
ЗЫ: всем спасибо.
Garfunkel (2004-09-09 02:25:00) [2]Но зато цвет фона есть у панелей. Ставишь их на форму (Form1), изменяешь размер чтобы были похожи на кнопки и у первой панели по событию MouseDown пишешь:
//-----------------------------------------
procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
(Sender as TPanel).BevelInner:=bvLowered;
(Sender as TPanel).BevelOuter:=bvLowered;
end;
//------------------------------------------
и на событие MouseUp....
//------------------------------------------
procedure TForm1.Panel1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
(Sender as TPanel).BevelInner:=bvRaised;
(Sender as TPanel).BevelOuter:=bvRaised;
end;
//----------------------------------------------
Ну и остальным панелям-кнопкам ставишь тоже самое. Вот и все. Сойдет я думаю?
Gero (2004-09-09 00:27:00) [3]По отношению к меню - не рулят.
wl (2004-09-09 00:25:00) [4]темы виндовз экспи рулят
Gero (2004-09-09 00:20:00) [5]Для button - писать наследника и рисовать самому, для TMainMenu - ставить OwnerDraw := True и обрабатывать OmMeasureItem/OnDrawItem(OnAdvancedDrawItem).