Если в редакторе массива компонента ToolBar указать ^=Файл, то появится стрелка для выпадающего списка, а можно ли создать сам выпадающий список?
[size=-2]------ Добавлено в 00:43
Кто-нибудь что-нибудь может сказать?
Этот топик читают: Гость
Ответов: 1891
Рейтинг: 110
|
|||
карма: 0 |
| ||
файлы: 1 | TB.jpg [972B] [311] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
скорей всего, что нельзя. Из среды во всяком случае
|
|||
карма: 27 |
|
Разработчик
Ответов: 26151
Рейтинг: 2127
|
|||
0
|
|||
карма: 22 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
nesco писал(а): Я скажу, что можно, но надо доделывать компонентnesco, под словом "нельзя" уже давно понимается отсутствие данной возможности в рамках стандартных элементов и простых решений. Иначе любой подобный вопрос теряет смысл поскольку сделать-то на самом деле можно все. |
|||
карма: 27 |
|
Ответов: 3655
Рейтинг: 69
|
|||
nesco писал(а): Надо определиться, что конкретно надо вызывать. А что можно Я понимаю так всунуть туда PopupMenu и пусть вываливается при клике на стрелку. |
|||
карма: 0 |
|
Разработчик
Ответов: 26151
Рейтинг: 2127
|
|||
Dilma писал(а): простых решенийА что, добавить событие OnDropDown и выдать координаты нажатой кнопки много кода надо вписать? А в принципе, мне до барабана, не я предлагал. Пока не будет конкретной задачи и пальцем не пошевелю, пусть все остается как есть. |
|||
карма: 22 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
nesco, ну давай разбираться:
1) нужно вставить обработчик OnDropDown, который сразу же расползется на все программы, не нуждающиеся в выпадающем меню 2) не забыть про то, что кнопка может быть вовсе не одна и что реализовывать PopupMenu внутри компонента смысла не имеет 3) учитывая предыдущий пункт придумать интерфейс, по которому этот обработчик будет реализовываться на пользовательском уровне через соединение с компонентом PopupMenu и правильно передавать кнопку(имя, индекс или еще что) и координаты(в виде X и Y, в виде y*65536 + x или еще что). |
|||
карма: 27 |
|
Разработчик
Ответов: 26151
Рейтинг: 2127
|
|||
Dilma, я думал совсем по другому:
1. Внутри компонента реализовываем обработчик OnTBDropDown. Нафиг он никому не нужен больше. 2. Выдаем на нижние точки координаты левого нижнего угла кнопки. 3. Выставляем событие OnDropDown с индексом нажатой кнопки. А вот дальше пользователь пусть лепит любые компоненты к этой координатной точке, преобразовывывая координаты во что ему угодно будет. |
|||
карма: 22 |
|
Ответов: 9906
Рейтинг: 351
|
|||
nesco писал(а): я думал совсем по другомуа я чего-то разницы и не увидел никакой почти Попробую "перевести" его ОСНОВНУЮ мысль из предыдущего поста: Он хочет вдолбить тебе в голову, что "который сразу же расползется на все программы" - означает наличие ЛИШНЕГО кода в программах тех пользователей, которые никогда шляпу в ToolBar не ставили, и знать про нее не знают. И, предположим, и знать не хотят, но коды дополнительные - ПОЛУЧАТ все равно. И мысль его основная такова, что это неизбежно в сегодняшней схеме кодогенерации при введении (не важно - подключены или нет) дополнительных правых и верхних точек. И хочет он обратить твое внимание на то, что такое может быть устранено лишь в схемех кодогенерации типа WEB или FASM И расстраивается, наверное, что вместо того, чтобы вопросы задавать по этим схемам кодогенерации (то, что там тебе сразу все понятно - поверить невозможно), ты очередную вершину "рисования осваиваешь" |
|||
карма: 9 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Galkov писал(а): а я чего-то разницы и не увиделесли забыть сейчас про все остальное, то разница таки между наскоро предложенным интерфейсом: nesco писал(а): 2. Выдаем на нижние точки координаты левого нижнего угла кнопки.
3. Выставляем событие OnDropDown с индексом нажатой кнопки. и более удобным с точки зрения пользователя - есть. Положим, если наибольшая часть подключений будет такова, что пользователь захочет узнать какую кнопку нажали и затем вывести соответствующее ей меню, то правильнее было б выдавать данные в виде МТ из двух вагонов: <координаты в виде Y*65536 + X><индекс/имя точки> тогда вся конструкция обойдется пятеркой элементов:
а если меню всего одно, то схема становится тривиальной до невозможности: соединяем точку OnTBDropDown нашего ToolBar с точкой doPopup нужного меню. И все. Вот собственно этому и стоило посвятить основное время в решение вопроса, а: nesco писал(а): ...добавить событие OnDropDown и выдать координаты нажатой кнопки...это извините каждый может |
|||
карма: 27 |
|
Разработчик
Ответов: 26151
Рейтинг: 2127
|
|||
Galkov, ты чего на меня бочку покатил. Я вообще ничего тут не предлагал и уже успел заметить, что обработчик OnDropDown выключен. Да и черт бы с ним, мне он лично не нужен. А разница, все же была -- я не предлагал втыкать PopUpMenu( да и никакой контрол) внутрь компонента, именно потому, что кнопок может быть много. То, что ты написал, может и будет, но не завтра.
[size=-2]------ Добавлено в 18:06 Dilma писал(а): захочет узнать какую кнопку нажали и затем вывести соответствующее ей менюА если он захочет активизировать ComboBox, то ему нужны будут уже не сжатые <координаты в виде Y*65536 + X> |
|||
карма: 22 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
nesco писал(а): А если он захочет активизировать ComboBoxэто как? |
|||
карма: 27 |
|
Разработчик
Ответов: 26151
Рейтинг: 2127
|
|||
Dilma, кинуть на форму Combobox и сделать ему Visible=False, а по этой кнопке установить ему координаты вывода на экран и сделать Visible=True, а после ввода -- опять скрыть. И всеравно это чертово событие не выдается, так что разговор, пока, беспредметный. Я пробовал его прикрутить -- нифига...
|
|||
карма: 22 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
nesco писал(а): кинуть на форму Combobox и сделать ему Visible=False, а по этой кнопке установить ему координаты вывода на экран и сделать Visible=Trueни разу не встречал такое использование элемента... |
|||
карма: 27 |
|
Ответов: 3655
Рейтинг: 69
|
|||
Dilma писал(а): ни разу не встречал такое использование элемента...Толи ещё будет о ё ёй |
|||
карма: 0 |
|