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

Вниз

Не получается зависимый перключатель на ToolButtons, HELP!   Найти похожие ветки 

 
lipskiy ©   (2004-03-18 00:06) [0]

Простая вроде вещь, но никак не настроить! Помогите!
На форме ToolBar, на нем две ToolButton.
Нужно настроить их зависимое переключение, т.е. с залипанием нажатой и отлипанием другой кнопки (поведение как у radiobuttons) при ОБЯЗАТЕЛЬНОМ условии, что Style у кнопок установлен в tbsDropDown. Именно при этом стиле и не настраивается!
Помогите! А то все мое красивое интерфейсное решение летит к чертям.


 
Defunct ©   (2004-03-18 00:50) [1]

Раз именно при этом стиле не настраивается, то выполняйте отлипание вручную.

в OnClick
ToolBtnX.Down := False;


 
lipskiy ©   (2004-03-18 21:15) [2]

Да если б все так просто было...
Проблема не в том, что не отлипает, а в том что не залипает!
Никак, ни автоматом ни вручную.


 
lipskiy ©   (2004-03-19 22:45) [3]

Господа, ХЕЛП МИ ПЛИЗ!!!!


 
Алхимик ©   (2004-03-19 22:55) [4]

Из справки
Tool buttons can remain Down only if Style is tbsCheck.


 
lipskiy ©   (2004-03-20 01:29) [5]

Да, но тем не менее если делать кнопке Down:= True; программно, НО НЕ ПО СОБЫТИЮ МЫШИ НА ЭТОЙ КНОПКЕ, а по любому другому действию, то тулбаттоны залипают как положено при любом стиле.
Может можно как-то это обойти?

Или может посоветуете, как по другому реализовать кнопки на стандартном тулбаре, чтобы из него выпадала менюшка и чтобы кнопка могла залипать. Главное, что менюшка не должна выпадать при любом клике на кнопке, а только когда действительно эта менюшка нужна, кроме как двухсекционная кнопка я другого варианта не вижу, но она не залипает...

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


 
Defunct ©   (2004-03-20 02:04) [6]

> Или может посоветуете, как по другому реализовать кнопки на стандартном тулбаре, чтобы из него выпадала менюшка и чтобы кнопка могла залипать.

Использовать 2 кнопки, одна залипает, а вторая с прикрепленным PopupMenu


 
ЮЮ ©   (2004-03-20 06:40) [7]

> Или может посоветуете, как по другому реализовать кнопки на стандартном тулбаре, чтобы из него выпадала менюшка и чтобы кнопка могла залипать.

На в OnClick трех кнопок вставить строчку
 SetCorrectStyle(Sender),
а в OnPopupMenu соответствующих кнопок
 SetCorrectStyle(<соответствующая кнопка>),
то именно так всё и будет выглядеть, где

procedure TForm1.SetCorrectStyle(Sender: TObject);
begin
 SetStyle(ToolButton1, Sender);
 SetStyle(ToolButton2, Sender);
 SetStyle(ToolButton3, Sender);
end;

procedure TForm1.SetStyle(Selected: TToolButton; Clicked: TObject);
begin
 if Selected <> Clicked then begin
   Selected.Style := tbsCheck;
   Selected.Down := false;
 end
 else begin
   Selected.Style := tbsDropDown;
   Selected.Down := true;
   Selected.Style := tbsCheck;
 end;
end;


 
lipskiy ©   (2004-03-20 09:20) [8]

Спасибо, вроде что-то получается похожее на то что надо, хотя не совсем. Поковыряю еще.



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

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

Наверх




Память: 0.49 MB
Время: 0.036 c
4-1075710638
Alexander666
2004-02-02 11:30
2004.04.11
MakeObjectInstance vs. WndProc


1-1080280135
Ozone
2004-03-26 08:48
2004.04.11
TMemoryStream


7-1075971249
liv
2004-02-05 11:54
2004.04.11
пользова тели на сервери домена


1-1082379131
ksa3003
2004-04-19 16:52
2004.04.11
DateTimePicker


7-1080318300
Vadim
2004-03-26 19:25
2004.04.11
Перезагрузка