Користите одређени језик кодирања да бисте програмирали Делпхи апликације да бисте приказали наговештај или опис, када миш пређе преко компоненте менија. Ако је својство "СховХинт" постављено на "труе" и додате текст својству "хинт", ова порука ће се приказати када миш поставите изнад компоненте (на пример ТБуттон).
Омогућите савете за ставке менија
Због начина на који је Виндовс дизајниран, чак и ако вредност за својство наговештаја поставите на ставку менија, скочни савет се неће приказати. Међутим, ставке менија програма Виндовс старт нуде савете. Мени фаворита у програму Интернет Екплорер такође приказује наговештаје о ставкама менија.
Могуће је користити ОнХинт догађај променљиве глобалне апликације у Делпхи апликације за приказ ставки менија у траци статуса.
Виндовс не излаже поруке потребне за подршку традиционалном догађају ОнМоусеЕнтер. Међутим, порука ВМ_МЕНУСЕЛЕЦТ се шаље када корисник изабере ставку у менију.
ВМ_МЕНУСЕЛЕЦТ имплементација ТЦустомФорм (предак ТФорм-а) поставља наговештај ставке менија на „Апплицатион. Савет ", тако да се може користити у апликацији. ОнХинт догађај.
Ако желите да додате искачуће савете ставке менија (савете) у своје меније апликација Делпхи, усредсредите се на поруку ВМ_МенуСелецт.
Попуп Хинтс
Пошто се не можете ослонити на апликацију. АцтиватеХинт метода за приказ прозора са наговештајима за ставке менија (пошто руковање менијем у потпуности врши Виндовс), да бисте приказали прозор са наговештајем, морате да креирате сопствену верзију прозора са наговештајем извођењем нове класе из „ТХинтВиндов“.
Ево како да креирате класу ТМенуИтемХинт. Ово је удовица са наговештајима која је заправо приказана ставке менија!
Прво морате да обрадите ВМ_МЕНУСЕЛЕЦТ поруку за Виндовс:
тип
ТФорм1 = класа(ТФорм)
...
приватни
процедура ВММенуСелецт (вар Мсг: ТВММенуСелецт); порука ВМ_МЕНУСЕЛЕЦТ;
крај...
имплементација...
процедура ТФорм1.ВММенуСелецт (вар Мсг: ТВММенуСелецт);
вар менуИтем: ТМенуИтем; хСубМену: ХМЕНУ;
започети
наслеђено; // од ТЦустомФорм (тако да апликација. Савет је додељен)
менуИтем: = нула;
ако (Мсг МенуФлаг <> $ ФФФФ) или (Мсг ИДИтем <> 0) онда
започети
ако Мсг. МенуФлаг и МФ_ПОПУП = МФ_ПОПУП онда
започети
хСубМену: = ГетСубМену (Мсг. Мени, Порука ИДИтем);
менуИтем: = Селф. Мени. ФиндИтем (хСубМену, фкХандле);
крај
друго
започети
менуИтем: = Селф. Мени. ФиндИтем (Мсг ИДИтем, фкЦомманд);
крај;
крај; миХинт. ДоАцтиватеХинт (менуИтем);
крај; (* ВММенуСелецт *)
Брзе информације: порука ВМ_МЕНУСЕЛЕЦТ шаље се у прозор власника менија када корисник изабере (али не кликне) ставку менија. Кориштењем методе ФиндИтем из ТМену класе, можете добити тренутно изабрану ставку менија. Параметри функције ФиндИтем односе се на својства примљене поруке. Када сазнамо с којом ставком менија је миш завршен, назовимо методу ДоАцтиватеХинт из класе ТМенуИтемХинт. Променљива миХинт је дефинисана као "вар миХинт: ТМенуИтемХинт" и креирана је у обрасцима форме ОнЦреате евент хандлер.
Оно што је остало је имплементација класе ТМенуИтемХинт.
Ево дела интерфејса:
ТМенуИтемХинт = класа(ТХинтВиндов)
приватни
ацтивеМенуИтем: ТМенуИтем;
сховТимер: ТТимер;
хидТимер: ТТимер;
процедура ХидеТиме (пошиљалац: ТОбјецт);
процедура СховТиме (пошиљалац: ТОбјецт);
јавни
конструктор Креирај (АОвнер: ТЦомпонент); прегазити;
процедура ДоАцтиватеХинт (менуИтем: ТМенуИтем);
деструктор Дестрои; прегазити;
крај;
У основи, ДоАцтиватеХинт функција позива методу АцтиватеХинт ТХинтВиндов-а користећи својство ТМенуИтем Хинт (ако је додељено). СховТимер се користи да би се осигурало да ХинтПаусе апликације протекне пре него што се појави савет. Тхе скривај користи апликацију. ХинтХидеПаусе да бисте сакрили прозор са наговештајем након одређеног интервала.
Коришћење савета о ставкама менија
Иако би неки могли рећи да није добар дизајн за приказивање савета за ставке менија, постоје ситуације у којима је приказивање савета ставки менија много боље него коришћење статусне траке. Попис недавно коришћених (МРУ) менија је један такав случај. Мени прилагођене траке задатака је још један.