Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Это у меня глюки, или действительно глюки? (TToolBar и сепаратор) [D5, Win2k]


lipskiy ©   (2002-08-27 10:59:00) 

Простейший пример - пустая форма, на нее кинуть TToolBar, на нем создать кнопку, сепаратор и еще кнопку. На нажатие первой кнопки написать: Сепаратор.визибл:= фальш.
Прогнать программу, нажать кнопку - сепаратор не выключается!
Кнопки таким образом гаснут, а сепараторы нет.
У всех так, или это у меня чего-нить кривое (руки, например :)?
И как это починить?


lipskiy   (2002-08-29 21:57:00) [1]

Да, я тоже согласен с MsGuns © (27.08.02 23:52)
На самом деле я его никогда не юзал, по сему вопрос - что вообще в нем особенного и удобного? Не спорю - просто спрашиваю, потому что не знаю. Насколько я смог навскидку разглядеть - список его событий можно просто повесить параллельно и на кнопки и на меню, но чем это лучше обычных ОнКликов, которые также можно назначить один на все, я так и не понял.


nick_sniper   (2002-08-28 18:41:00) [2]

Полностью согласен с MsGuns © (27.08.02 23:52)

Лучше вместо стандартного TToolBar используй Toolbar2000. В нем проблем на 90% меньше и он (по крайней мере был) freeware.

http://www.jrsoftware.org/
alternate address: http://www.jordanr.cjb.net/


MsGuns   (2002-08-27 23:52:00) [3]

Настоятельно рекомендую переключение кнопок делать ЦЕНТРАЛИЗОВАННО через типовые обработчики не событий (OnClick), а экшины из ActionList. Каждый из таких экшинов и должен переключать соотв. элементы управления. (Например, обработчик акшина ОТКРЫТЬ должен после выполнения открытия выключать "свою" кнопку и включать кнопку ЗАКРЫТЬ и наоборот). Программирование становится просто приятным ! Я же обычно использую по отдельному ActionList на каждую логическую группу кнопок - функций и для этой группы пишу процедуру типа SetStatusToolBar1(var Status: Shar), где и переключаю все кнопки в зависимости от полученного значения Status. В каждом же обработчике ПОСЛЕ выполнения соотв. функции устанавливаю этот Status как надо и обращаюсь к процедуре SetStatusToolBar1


lipskiy   (2002-08-27 23:25:00) [4]

2 MsGuns
Дак а смысл невизибельным весь бар делать? Мне ж надо по отдельности - типа настраиваемая панель инструментов.
А где вообще в исходниках видно, что На сепараторе не висит накакого экшена? Просто я не смог ничего там определить.


MsGuns   (2002-08-27 22:24:00) [5]

На сепараторе не висит накакого экшена, поэтому визибл для него вроде как неэффективен. Сделай невизибельным весь бар !


Mikhail   (2002-08-27 19:27:00) [6]

А Вы просто вот это попробуйте

ToolButton2.Visible := not ToolButton2.Visible;

У меня вообще беда какая-то (правда D3)


lenin   (2002-08-27 16:40:00) [7]


> lipskiy © (27.08.02 16:37)

У меня XP и 6 дельфя.


lipskiy   (2002-08-27 16:37:00) [8]

2 murza
Не ну что это так не положено - это как раз понятно, так как в дизайн-тайме то как раз все гаснет, не гаснет только в рунтайме.
Значит все же глючит, а не фичит.
А по другому - это через Create/Free или как?

2 lenin
Может от оси зависит? У тебя какая? И дельфа какая?


murza   (2002-08-27 12:14:00) [9]


> lipskiy © (27.08.02 10:59)

У меня в точности тоже самое было. Я решил что так и положено и делал по другому. К тому же только что попробовал на другой операционке то же самое. Значит не глючит, а фичит.


lenin   (2002-08-27 11:03:00) [10]

У меня все гаснит как надо.


Наверх

Титульная страница Поиск, карта сайта Написать письмо