Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Вниз

Очень нада, помогите   Найти похожие ветки 

 
FREEMAX   (2002-10-14 01:49) [0]

Для Вас вопрос наверное несложный, а я незнаю как изменить цвет всплывающего меню (MainMenu). Подскажите очень надо.


 
Юрий Зотов   (2002-10-14 01:59) [1]

Вопрос как раз непростой. Это системный цвет и изменить его в отдельно взятой программе не так-то легко. Нужно рисовать меню "ручками" - см. свойство TMenu.OwnerDraw и события TMenuItem.OnDrawItem, TMenuItem.OnAdvancedDrawItem, TMenuItem.OnMeasureItem, а также свойства и методы TCanvas.


 
FREEMAX   (2002-10-14 02:04) [2]

Ого не знал что все так непросто, я попытаюсь спасибо за ответ. Да если не сложно напишите хоть код, ну это если не сложно, а так ина етом спасибо.:)


 
Юрий Зотов   (2002-10-14 03:43) [3]

Вот пример.

type
TForm1 = class(TForm)
PopupMenu: TPopupMenu;
Item1: TMenuItem;
Item2: TMenuItem;
Item3: TMenuItem;
procedure FormCreate(Sender: TObject); // OnCreate
private
procedure DrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect; Selected: Boolean);
end;

procedure TForm1.FormCreate(Sender: TObject);
var
i: integer;
begin
with PopupMenu, Items do
begin
OwnerDraw := True;
for i := 0 to Count - 1 do Items[i].OnDrawItem := DrawItem
end
end;

procedure TForm1.DrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect; Selected: Boolean);
const
Colors: array[boolean] of TColor = (clNavy, clYellow);
begin
with ACanvas do
begin
Brush.Color := Colors[Selected];
Font.Color := Colors[not Selected];
TextRect(ARect, ARect.Left + 4, ARect.Top + 1, StripHotkey(TMenuItem(Sender).Caption))
end
end;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
1-78522
Леван
2002-10-14 09:39
2002.10.24
Formi v Runtime


1-78428
Chinas
2002-10-14 11:35
2002.10.24
Форма из DLL, как правильно закрыть?


14-78650
Nox
2002-10-01 19:47
2002.10.24
<<<Я ДОБАВИЛ СВОЙ ВОПРОС В ФОРУМ, А ОН УШЁЛ!>>>


4-78722
Molochai
2002-09-11 09:17
2002.10.24
Задания принтера(как отследить)


1-78427
bliznuk
2002-10-15 17:29
2002.10.24
Библиотека RxCtrls.dcu





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский