Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.031 c
3-1081546442
Gott
2004-04-10 01:34
2004.04.11
Способ хранения Memo полей


14-1082021325
Stas
2004-04-15 13:28
2004.04.11
QNX система работающая в реальном времени


9-1064889692
Zergling
2003-09-30 06:41
2004.04.11
DirectDraw


9-1064484305
mozg
2003-09-25 14:05
2004.04.11
[DelphiX] Как узнать что кнопка отпущена


14-1079531670
Иван Бездомный
2004-03-17 16:54
2004.04.11
Подозрительная служба




   Наверх