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

Вниз

Menu.DefaultItem - невозможно снять   Найти похожие ветки 

 
Vladimyr ©   (2004-07-12 12:33) [0]

Привет всем, пробовал ли кто-нибудь использовать у меню свойство DefaultItem ?
Дело в том, что, изменяя его в runtime, я с удивлением обнаружил, что могу установить его для любого элемента меню, но не могу снять!
Присваивание PopupMenu1.Items[n].DefaultItem := false не даёт абсолютно никакого эффекта!
В отчаянии я даже пытался оттрассировать функцию SetState, и обнаружил, что она работает совершенно нормально, соответствующий бит у fState сбрасывается.
(то есть если fState был 4104, то стал 8, и т.п.)


 
Vladimir Kladov   (2004-07-12 15:21) [1]

наверное, надо обновить menu bar.


 
Vladimyr ©   (2004-07-13 00:47) [2]

Попробовал - безрезультатно.
Да и не логично использовать процедуру RedrawFormMenuBar для обыкновенного PopupMenu.
И кстати, жирнеют пункты меню нормально, безо всякого обновления...


 
z007   (2004-07-13 23:47) [3]

Надо принудительно заставить перерисовать и пересчитать нужный пунтк меню. При изменении сделать Visible:=False, Затем - True.
Все.
(Если не известен нужный пункт... ищите или перебирайте все)


 
Vladimyr ©   (2004-07-14 03:05) [4]

Да, помогло... Как всё просто! Жаль, этого кода нет в KOL.pas...
Спасибо огромное.


 
Vladimir Kladov   (2004-07-14 16:27) [5]

Какой код? Ладно, я сам посмотрю. Мне никогда не приходило в голову в run-time менять Default. Не думаю, что это - способ облегчить работу пользователя с интерфейсом. Интерфейс должен работать на уровне мышечно-моторных функций. А если сейчас default - это одно, через секунду - другое, то это как-то не очень.


 
Vladimyr ©   (2004-07-15 03:28) [6]

После изменения defaultitem воткнуть:
Visible := false;
Visible := true;

ВСЁ! :)

А для пользователя удобно, когда отмеченный радио-итем тут же  жирнеет...


 
z007   (2004-07-18 11:38) [7]


> После изменения defaultitem воткнуть:

Зачем?
Будет ли это "в духе kol"?


 
Vladimir Kladov   (2004-07-18 11:44) [8]

Конечно не будет. Поэтому я решил просто добавить комментарий к свойству DefaultItem:

|<br>If you change DefaultItem at run-time and whant
      to provide changing its visual state, recreate the item first resetting
      Visible property, then setting it again.


 
z007   (2004-07-19 20:11) [9]

В точку.



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

Форум: "KOL";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.08 c
14-1106686685
Гаврила
2005-01-25 23:58
2005.02.13
Компания "Эскорт" - кто что слышал


3-1106036342
Некто
2005-01-18 11:19
2005.02.13
Медленная работа MS Access


14-1106141338
pasha_golub
2005-01-19 16:28
2005.02.13
http://www.ы.com/


1-1107246266
Suvit
2005-02-01 11:24
2005.02.13
TMemo высота


4-1103725932
Rayslava
2004-12-22 17:32
2005.02.13
Сохранение процесса





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