Galkov писал(а):
а я чего-то разницы и не увиделесли забыть сейчас про все остальное, то разница таки между наскоро предложенным интерфейсом:
nesco писал(а):
2. Выдаем на нижние точки координаты левого нижнего угла кнопки.
3. Выставляем событие OnDropDown с индексом нажатой кнопки.
и более удобным с точки зрения пользователя - есть. Положим, если наибольшая часть подключений будет такова, что пользователь захочет узнать какую кнопку нажали и затем вывести соответствующее ей меню, то правильнее было б выдавать данные в виде МТ из двух вагонов:
<координаты в виде Y*65536 + X><индекс/имя точки>
тогда вся конструкция обойдется пятеркой элементов:
Add(PopupMenu,14324213,420,442)
{
}
Add(Case,9794282,308,435)
{
link(onTrue,16384915:doData,[])
}
Add(MT_Get,14258471,203,435)
{
link(onData,9794282:doCase,[])
link(onGet,1991660:doValue,[])
}
Add(Memory,1991660,259,442)
{
}
Add(DoData,16384915,364,442)
{
link(onEventData,14324213:doPopup,[])
link(Data,1991660:Value,[(370,432)(328,432)(328,484)(265,484)])
}
а если меню всего одно, то схема становится тривиальной до невозможности: соединяем точку OnTBDropDown нашего ToolBar с точкой doPopup нужного меню. И все.
Вот собственно этому и стоило посвятить основное время в решение вопроса, а:
nesco писал(а):
...добавить событие OnDropDown и выдать координаты нажатой кнопки...это извините каждый может