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

Вниз

графическое меню   Найти похожие ветки 

 
servs   (2003-07-03 20:43) [0]

Нужно сделать графическое меню (типа должно быть красивенько).
Накидали Image-ей, поставили картинки - все замечательно.
Когда подвели мышку - заменили на более яркую картинку. А когда менять обратно?

Я понимаю что это самый тупой метод, но его хватит.

Итак вопросы:
Как это нужно делать?
Как отслеживать то что мышка "ушала"?
Вообще стоит возиться с картинками или написать что-то на базе другого компонента?

Зы. Вообщем, подскажите куда двигаться.
Ззы. Чужие компоненты только с исходниками.


 
Poirot   (2003-07-03 20:49) [1]

См исходники самого класса TMenu! Там смотри обраьотчики события типа PAINT и мышковские... делается всё просто... для начала поставь меню в ОунДрау и правь события On.... что-то там Draw!!!!
Это для стандартных менюшек....


 
servs   (2003-07-03 20:53) [2]

Меню в смысле не стандартное.
А типа как делают в энциклопедиях, оболочках для МР3 сборников разных. Т.е лежать оно будет "посреди" формы.


 
Poirot   (2003-07-03 20:57) [3]

Тогда вообще просто!!!
Знаете как менять форму окна с стандартной на произвольную?
Теперь берём стд буттон и кидаем на него гимп, причём я точьно не помню в какой последовательности, но гимп состоять может из нескольких одинаковых пикторгам и каждая отражает своё состояние... ну и в принципе всё... или же грузить при каждом из необходимых событий нужные гимпы...
А потом по контуру картинки формирует красивую кнопочку....
Если вам надо что-то типа винампа, так с эти простой листбокс справится, только самому прорисовывать придётся - аналогично как с меню....


 
Dimaxx   (2003-07-03 23:53) [4]

Пиши на мыло - я скину тебе компонент XPMenu. Он аналогичен меню Office XP. Там сам посмотришь и сделаешь как тебе нужно.


 
Adil Aliev   (2003-07-04 00:16) [5]

Что то должен быть в DrawItem


 
servs   (2003-07-04 15:37) [6]

>Poirot ©

Спасибо, твой варант мне нравиться. А больлее детально про
"гимп состоять может из нескольких одинаковых пикторгам и каждая отражает своё состояние... " незнаешь где можно посмотреть?

>Dimaxx ©, Adil Aliev ©

Не то меню. XPMenu у немя где то есть


 
servs   (2003-07-04 16:07) [7]

Спасибо всем ответившим, проблемы решилась вот так:

...............

type
TVSImage = class(TImage)
private
{ Private declarations }
FOnMouseEnter: TNotifyEvent;
FOnMouseLeave: TNotifyEvent;
procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
protected
{ Protected declarations }
public
{ Public declarations }
published
{ Published declarations }
property OnMouseEnter: TNotifyEvent read FOnMouseEnter write FOnMouseEnter;
property OnMouseLeave: TNotifyEvent read FOnMouseLeave write FOnMouseLeave;
end;

procedure Register;

implementation

procedure TVSImage.CMMouseEnter(var Message: TMessage);
begin
inherited;
if Assigned(FOnMouseEnter) then
FOnMouseEnter(Self);
end;

procedure TVSImage.CMMouseLeave(var Message: TMessage);
begin
inherited;
if Assigned(FOnMouseLeave) then
FOnMouseLeave(Self);
end;

...........


 
Poirot   (2003-07-04 16:39) [8]


> >Poirot ©
>
> Спасибо, твой варант мне нравиться. А больлее детально про
>
> "гимп состоять может из нескольких одинаковых пикторгам
> и каждая отражает своё состояние... " незнаешь где можно
> посмотреть?

должно быть в МСДН! Ты посмотри на гимпы которые с делфими идут - там 2 картинки - первая отображается когда кнопка енадлед а вторая - дизаблед!!!



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

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

Наверх





Память: 0.46 MB
Время: 0.008 c
1-55653
Man
2003-07-04 13:58
2003.07.17
ошибка при запуске Дельфи


1-55646
xxxCrazyManxxx
2003-07-04 11:47
2003.07.17
Пожалуйста помогите закрывается форма.........


7-55870
nik
2003-04-28 12:52
2003.07.17
COM порт (NT)


3-55420
Vladimir_Shk
2003-06-24 08:31
2003.07.17
Обработка мыши в DBGrid


1-55658
shane54
2003-07-04 13:40
2003.07.17
Как в ListBox е строки разными цветами выводить?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский