Форум: "Начинающим";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];
ВнизКак проеделить координаты для DropDownMenu у ToolButton? Найти похожие ветки
← →
Kolan © (2007-11-03 15:50) [0]Здравствуйте,
Нужно показать DropDownMenu, как вычислить координаты.
ЗЫ
И как это сделано в VCL я не нашел код, который это делает…
← →
Reindeer Moss Eater © (2007-11-03 15:58) [1]TToolButton1.Style := tbsDropDown;
← →
Amoeba © (2007-11-03 17:14) [2][1], и вычислять ничего не надо.
← →
Kolan © (2007-11-03 17:45) [3]Не у кнопки уже tbsDropDown.
Я хочу сделать так:Кнопка.ПопАпниСвоёМеню
. //То есть сделайть надо так, как будто пользователь нажал на треугольничег
← →
Kolan © (2007-11-03 17:45) [4]> Кнопка.ПопАпниСвоёМеню
Но так как тагого метода нет, то я решил сделать
Кнопка.DropDownMenu.Popup(а чё сюда подставлять?)
← →
Kolan © (2007-11-03 17:51) [5]Я пытался так:
Point.X := SaveToolButton.Left;
Point.Y := SaveToolButton.Top + SaveToolButton.Height;
Point := SaveToolButton.ClientToScreen(Point);
SaveToolButton.DropdownMenu.Popup(Point.X, Point.Y);
Но координаты не правильные… :(
← →
Reindeer Moss Eater © (2007-11-03 18:10) [6]TToolButton.PopupMemu
← →
Kolan © (2007-11-03 20:23) [7]ToolButton1.PopupMenu — Это свойство типа TPopupMenu, а не метод
Что я делаю не так?
ЗЫ
Код:Point.X := SaveToolButton.Left;
Point.Y := SaveToolButton.Top + SaveToolButton.Height;
Point := SaveToolButton.ClientToScreen(Point);
SaveToolButton.DropdownMenu.Popup(Point.X, Point.Y);
сработал, толкоPoint.X — 184
← →
Reindeer Moss Eater © (2007-11-03 21:40) [8]Вот и присвой этому свойству свое попапменю.
← →
Kolan © (2007-11-04 07:35) [9]> Вот и присвой этому свойству свое попапменю.
Уже присвоено, только DropDownMenu… Как его показать под кнопкой? Не вычисля координат…
← →
korneley © (2007-11-04 09:36) [10]свойство
Style
уToolButton
выставь вtbsDropDown
как в [1], или в инспекторе объектов. Оно само и заработает.
← →
Leonid Troyanovsky © (2007-11-04 10:30) [11]
> Kolan © (03.11.07 20:23) [7]
> Point := SaveToolButton.ClientToScreen(Point);
Point := Self.ClientToScreen(Point); // т.е., в координатах формы
--
Regards, LVT.
← →
Kolan © (2007-11-04 10:58) [12]> Point := Self.ClientToScreen(Point); // т.е., в координатах
> формы
Тут один затык… ТуБар лежит на фрейие, а фрейм в пакете. И на форму он попадает при загрузки приложения. Ессно сам этот фрейм ниче не знает о том что с ним станет в ран тайме…
Да ладно вариант Point.X — 184 работает нормально…
← →
Leonid Troyanovsky © (2007-11-04 11:06) [13]
> Kolan © (04.11.07 10:58) [12]
> этот фрейм ниче не знает о том что с ним станет в ран тайме…
GetParentForm ?
> Да ладно вариант Point.X — 184 работает нормально…
Гы.
--
Regards, LVT.
← →
Lacmus © (2007-11-04 15:58) [14]
with ToolButton5, ClientToScreen(Point(0, Height)) do
DropdownMenu.Popup(X, Y);
← →
Kolan © (2007-11-04 16:09) [15]Ок, завтра проверю. О результатах доложу.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.047 c