Страница 1 из 1
Добавлено: 08 Январь 2005, 15:22
Гость
Здравствуйте, уважаемое кларион-сообщество. То ли праздники удались, то ли одно из двух. Но никак не получается отловить событие при выборе мной созданного пункта Popup меню. (C55H, АВС). Его я создаю внесением в Local Objects – Abc Objects – Browse of MyFile using ?Browse:1 (BrowseClass) – SetAlerts PROCEDURE, VIRTUAL – Code – Parent Call следующего кода: SELF.Popup.AddItem('Put in Personal Photo','PutPhoto').
В каком месте и что надо написать, что бы при выборе этого пункта меню, к примеру, отработал мессадж (Message(‘Ура, разаботало!’)?
Добавлено: 09 Январь 2005, 4:01
StillZero
как вариант: можно использовать MimicButton, точное название метода не помню, что то вроде AddMimicButton или AddMimicItem, т.е. вдополнении к твоему коду нужно добавить self.Popup.AddMimicButton('PutPhoto',?PutPhoto). На сам browse нужно положить кнопку и назвать ее ?PutPhoto, добавить ей атрибут hide, чтобы ее не было видно. На кнопку пишешь код, который необходимо выполнять и при нажатии в выпадающем меню твоего пункта будет выполняться код, написанный в кнопке.
удачи...
Написал: PAA(27)
Добавлено: 09 Январь 2005, 23:10
Гость
Так я все ити годы и делал. Только вот надоели все эти скрытые кнопки. Захотелось просто код отработать. Вроде бы и время на это было (праздники). Только вот до сих пор так и не разобрался с этим. Жаль... Или еще не все потерено...?
Добавлено: 10 Январь 2005, 13:20
StillZero
вообще...я делаю всегда так:
1. Описываю класс MyListBoxPopup PopupClass
2. На Init окна пишу код для инита класса и заполняю его пунктами:
Код: Выделить всё
MyListBoxPopup.Init()
MyListBoxPopup.AddItem('Добавить','Insert')
...
MyListBoxPopup.AddItem('первый пункт','MyItem1')
MyListBoxPopup.AddItem('второй пункт','MyItem2')
......
3. Alert на ?ListBox - MouseRight
4. на event-ы лист-бокса на AlertKey код:
Код: Выделить всё
if keycode()=MouseRight
case MyListBoxPopup.Ask()
of 'MyItem1'
...
of 'MyItem2'
...
end
end
... вообщем и целом вот так, а насчет кнопок - IMHO это хорошее решение

и красивое, может ты не знаешь куда их положить, ну типа там места не хватает: клади прямо на ListBox - ровными рядами и колонками

будет красиво
удачи...
Написал: PAA(27)