Вниз
Скачать: CL | DM;

ToolBar+ToolButton+PopupMenu(подсоединяем как DropDownMenu).   Найти похожие ветки 

← →
Dymok ©   (2010-05-17 12:02) [0]

ToolBar+ToolButton+PopupMenu(подсоединяем как DropDownMenu).
ToolButton.style ставим в tbsDropDown.

таким образом пытаюсь получить кнопку с выпадающим меню.

Вопрос: Как сделать так, чтобы PopupMenu выходило не только при нажатии на треугольничек, но и при нажатии на саму кнопку TOOlButton, причем выходило строго под кнопкой???

Пробовал обрабатывать событие TForm1.ToolButtonClick(Sender: TObject)

PopupMenu.Popup(Mouse.CursorPos.X+15, Mouse.CursorPos.Y+15);

Но в этом случае не удается вывести PopupMenu точно под кнопкой, особенно если сделать крупную копку,что не совсем красиво.


← →
Омлет ©   (2010-05-17 12:51) [1]

procedure TForm1.ToolButton1Click(Sender: TObject);
begin
 with TToolButton(Sender), ClientToScreen(Point(0, Height)) do
   PopupMenu1.Popup(x, y);
end;


← →
Dymok ©   (2010-05-17 12:57) [2]

Круто :)

Спасибо!


← →
Leonid Troyanovsky ©   (2010-05-17 13:49) [3]


> Dymok ©   (17.05.10 12:02)  

http://delphimaster.net/view/2-1273589073/

--
Regards, LVT.


← →
Dymok ©   (2010-05-17 14:18) [4]

Leonid Troyanovsky

О, это еще круче! Оказывается как все просто!


← →
Dymok ©   (2010-05-17 17:06) [5]

Будет еще лучше если добавить перед этим
(Sender as TToolButton).Down:=True;


← →
Leonid Troyanovsky ©   (2010-05-17 18:41) [6]


> Dymok ©   (17.05.10 17:06) [5]

> Будет еще лучше если добавить перед этим
> (Sender as TToolButton).Down:=True;

Переобоснуй.

--
Regards, LVT.

PS. Там обработчик был на OnClick.


← →
Dymok ©   (2010-05-18 08:45) [7]

Leonid Troyanovsky

Когда жмем на треугольничек (не на кнопку!!!), кнопка остается как бы нажатой (выделенной?), до тех пор пока видно выпадающее меню, т.е. как бы видно, что меню выпало из кнопки.

Когда жмем на кнопку без "(Sender as TToolButton).Down:=True", кнопка сразу становится ненажатой, что не очень красиво.


← →
Leonid Troyanovsky ©   (2010-05-18 10:45) [8]


> Dymok ©   (18.05.10 08:45) [7]

Теперь понятно.

--
Regards, LVT.



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

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



Память: 0.46 MB
Время: 0.044 c
15-1262347734
Kerk
2010-01-01 15:08
2010.08.27
Мысли про различия и эволюцию


4-1234435898
Fran
2009-02-12 13:51
2010.08.27
Как узнать имя пользователя терминальной программы?


2-1271606644
tippa
2010-04-18 20:04
2010.08.27
сравнение числа с маской


2-1267595287
allrussia
2010-03-03 08:48
2010.08.27
Перекодировка русского текста DOS+ANSI в ANSI


2-1274358308
Tifon
2010-05-20 16:25
2010.08.27
Как определить какая кнопка была нажата на клавиатуре.




   Наверх