Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.13;
Скачать: CL | DM;

Вниз

Снова про Menu   Найти похожие ветки 

 
Vasek   (2005-02-22 21:12) [0]

Как я понял из того, что ответа на мой предидущий вопрос не последовало, никто не использует ActionMainMenuBar в своих программах. В связи с этим попробую поставить другой:
Посоветуйте, пожалуйтса, какое меню можно использовать.
Требования:
1.Работа с меню должна осуществлятся с клавиатуы(на пример Alt- Активизирует меню, стелками перемещаемся, Enter- выбор пункта меню.
2.Необходима возможность изменения размера и шрифта (Charset).
3.Желательна возможность изменения цветов и добавления иконок.
Буду благодарен за орветы.


 
GanibalLector ©   (2005-02-23 01:51) [1]

1.Стандартный позволяет
2.Не уверен!А  зачем? Вам это ??
3.Запросто.Св-в стандартного предостаточно.


 
Vasek   (2005-02-23 02:17) [2]

To GanibalLector ©
1. См. мой предидущий вопрос.
В краце: ActionMainMenuBar ДВАЖДЫ обрабатывает OnExecut по клику мыши.
2. Слишком уж мелко.:) Задача мульиязычная.
3. Стандартный (MainMenuBar) отображает только иконки 16х16 что слишком уж мелко.
Вывод: Меня бы впоне устроил ActionMainMenuBar если кто поможет исправить вышеозначеный ГЛЮК !!!
Пока ещё не перестаю надеятся на компетенцию и помощ МАСТЕРОВ!!! :-))


 
GanibalLector ©   (2005-02-23 02:29) [3]

>1. См. мой предидущий вопрос.
Ну и где его смотреть?Ссылку что-ли засвети.
А вообще,ИМХО,ты фигней занимаешься.Зачем тебе эта красота?Главное гибкость,надежность,мин.стоимость и пр.


 
Vasek   (2005-02-23 02:40) [4]

Вот ссылка
http://delphimaster.net/view/1-1109016964/
>Зачем тебе эта красота?
Красота спасёт мир! :))
>Главное гибкость,надежность,мин.стоимость и пр.
Абсолютно согласен. Потому и нужно нормальное меню.


 
Sun bittern ©   (2005-02-23 08:59) [5]

Vasek   (23.02.05 02:40) [4]

Лучше юзай сторонние компоненты т.к. например в TActionToolBar тоже присутсвует ряд глюков. Или стандартную минюшку.


 
Vasek   (2005-02-23 10:41) [6]

To Sun bittern ©
Про глюки в TActionToolBar если можно поподробнее.
>Лучше юзай сторонние компоненты
А какие, например???


 
Vasek   (2005-02-23 17:40) [7]

Значит, все только поболтать, а помоч - так все мочат...


 
Sun bittern ©   (2005-02-23 20:06) [8]

Vasek   (23.02.05 17:40) [7]

>> Про глюки в TActionToolBar если можно поподробнее.

Есть несколько глюков, причем некоторые не особо приятные, можешь поверить наслово.

>Лучше юзай сторонние компоненты
>> А какие, например???

Компонентов в стиле XP ныне море, как платных так и халявных. Не найти их просто невозможно. Можешь на Торри поискать http://www.torry.net/

Если бы знали решение проблемы, думаю поделились бы, не жадные.

А так на отладку компонентов врядли кому-то охота тратить свое личное время. Модуль ActnMenus видели? Строчек кода там наверно на 80-100 страниц формата А4. А это: вникунть в суть работы каждого класса, понять принцип и последователность действий. Не по одному разу пробежаться отладчиком. Как думаете сколько времени это займет?

Приблизительную ошибку в компоненте уже знаете. Т.е. если менюшка лежит на панельке, то обработка сообщения происходит дважды. Вот и попробуйте выяснить, кто лишний раз сообщение шлет? Или может просто не хватает одного условия дабы ограничить данный глюк.

Возможные места откуда начать раскопки или может там и поправить получиться.
procedure TCustomActionMenuBar.CMItemClicked
procedure TCustomActionMenuBar.ProcessMouseMsg
procedure TCustomActionMenuBar.TrackMenu
procedure TCustomMenuButton.MouseDown
procedure TCustomMenuButton.MouseUp

Также проверить что и в какой момент времени посылает сообщения:
CM_ITEMCLICKED
WM_LBUTTONDOWN
WM_LBUTTONUP

А может где-то лишний раз вызывается метод
procedure TCustomActionMenuBar.ExecAction
или
TAction.Execute

Вот и попробуйте покапаться в таком сложном компонентике, тут времени даже у мастеров прилично потратится :). А советы вам уже выше дали ;).


 
Wonderer   (2005-02-23 21:39) [9]

Вообще используй только стандартные меню, но со своей прорисовкой, это не так уж и сложно, примеры есть, глянь базу на
http://delphiworld.narod.ru/. А еще поищи TXPMenu - глюкавый компонент, но принципы усвоить поможет. И забудь об этом TFUctionMainMenuBar и подобной дрянью. Не ты один поражаешся глюкавости. Даже в разработке очень капризные компоненты


 
Vasek   (2005-02-23 22:58) [10]

Всем Большое спасибо за участие.
С 23-м Февраля (кто знает) ;)


 
Геннадий   (2005-02-25 08:26) [11]

Здравствуйте !
Не знаю помогу или нет, но я сделал бы так ( чтобы долго не копатьяс ): обьявил переменную P1 и присвоил ей 0. В обработке  OnExecut выполняю проверку P1 = 0, да -> выполняю обработку и увеличиваю P1 на 1, если P1 = 1, то -> P1 = 0 и больше ничего не делаю. В этом случае обработка будет выполняться только один раз, причина глюка останется не устраненной.
С уважением Геннадий.



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

Текущий архив: 2005.03.13;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.046 c
4-1107247208
AlexTregubov
2005-02-01 11:40
2005.03.13
И снова о редиректе StdOut


14-1109049207
Kerk
2005-02-22 08:13
2005.03.13
Расшифруйте плиз.. чего они хотят


3-1108321705
mefisto
2005-02-13 22:08
2005.03.13
Правильная инсталяция Oracle 8i


14-1109002104
YurikGL
2005-02-21 19:08
2005.03.13
Белорусы - молодцы!


1-1109580630
akvilon
2005-02-28 11:50
2005.03.13
TDBLookupComboBox и Filter