Menu
Следующий код показывает, как добавить картинку в виде объекта TImage в объект TMenuItem.
Создайте обработчик сообщения WM_MENUCHAR.
Когда играешь во встроенную в Windows игру freecell, то справа в меню постоянно пишется сколько осталось карт. Давайте посмотрим, как это делается.
Перво наперво положим компонент главного меню на форму.
Теперь установим свойство OwnerDraw в true.
Далее создайте, то что Вы хотите вырисовывать в меню и создайте OnDrawItem.
В чём вопрос: как узнать, нажат ли сейчас именно нужный пункт меню? Чтобы я в таймере мог его опрашивать на состояние.
До тех пор, пока какая-то часть главного меню "выпала" (то есть нажат итем "Файл", и видны New, Open, Save etc.) нужно чёто делать раз в полсекунды. То есть надо отловить момент, когда это самое меню закроется, чтобы перестать чё-то делать.
В своем меню я хочу иметь графику. Но как мне сделать это?
Воспользуйтесь командой ModifyMenu. Тем не менее, Delphi 1.0 имеет привычку СТИРАТЬ изменения в пунктах меню, к примеру, созданных на основе изображения или отрисованных вручную. Если вы пользуетесь этими "фишками", вы НЕ должны осуществлять enable/disable или check/uncheck элементов меню через свойства.
Code: |
{©Drkb v.3} ModifyMenu(MainMenu.Handle, 3 { индекс меню, начиная слева с нуля}, mf_ByPosition or mf_Popup or mf_Help, mnuHelp.Handle, PChar('Help')); |
Страница 2 из 2