Страница 1 из 1

PopUp плюс иконки - проблема

Добавлено: 01 Июль 2015, 17:53
gopstop2007
Столкнулся при выводе на кнопке (?btn_FotoMenu) Popup меню вместо иконок, одна через .AddItem и PROP:Icon не выводится вместо иконки выводится в таком виде [83562PROP:Icon & '(MyIcon.ICO)]Просмотр , а вторая строка .AddItemMimic выводит с иконкой как должно быть.Проблема решилась подменой .AddItemMimic на .AddItem , вместе они при наличии в них иконок "не живут" :idied: Пример ниже, может где-то я лажанулся :)

Код: Выделить всё

 PopupRefers.Init() 
 PopupRefers.AddItem('[' & PROP:Icon & '(MyIcon.ICO)]Просмотр','FotoSee')
 PopupRefers.AddItemMimic('Save',?Save)	! ??---  проблема ----?????????

 PopSelectedItem=''
 if GetWindowRect(?btn_FotoMenu{Prop:Handle},address(loc:Rect))        
     PopSelectedItem=PopupRefers.Ask(loc:Rect.rLeft,loc:Rect.rBottom) 
 end
 
 CASE PopSelectedItem 
 OF 'FotoSee'
     DO MyRun
 OF 'Save'
 
 END
 PopupRefers.Kill() 

PopUp плюс иконки - проблема

Добавлено: 01 Июль 2015, 18:02
kreator
А если сделать через шаблон "DisplayPopupMenu"? А если воспользоваться методом SetIcon? У меня нет проблем ни в одной версии Clarion.

PopUp плюс иконки - проблема

Добавлено: 01 Июль 2015, 21:12
gopstop2007
kreator писал(а):А если сделать через шаблон "DisplayPopupMenu"?
Не пользовался данным шаблоном , ручками наглядней на пару строк
kreator писал(а):А если воспользоваться методом SetIcon? У меня нет проблем ни в одной версии Clarion.
спасибо, не знал об данном методе для popup :)

PopUp плюс иконки - проблема

Добавлено: 02 Июль 2015, 10:00
kreator
gopstop2007 писал(а):ручками наглядней на пару строк
Шаблон удобней во сто крат, отлаженная веками вещь. И посмотреть можно, что он генерит. И потом написать ручками также. Пример стандартного:

Код: Выделить всё

  PopupMgr5.Init(INIMgr)
  PopupMgr5.AddItem('Табельный журнал','1')
  PopupMgr5.AddItem('Табельный журнал с выработкой','2')
  PopupMgr5.AddItem('Отчет о фактически отработанном времени ','3')
  PopupMgr5.AddItem('Отчёт о закрытии ПТ','4')
  PopupMgr5.SetIcon('1','~pics\excel16.ico')
  PopupMgr5.SetIcon('2','~pics\excel16.ico')
  PopupMgr5.SetIcon('3','~pics\excel16.ico')
  PopupMgr5.SetIcon('4','~pics\excel16.ico')

PopUp плюс иконки - проблема

Добавлено: 02 Июль 2015, 11:09
gopstop2007
согласен, но раз шаблон то могли подвязать и иконку :), а как привязка шаблона popup, например к кнопке?

PopUp плюс иконки - проблема

Добавлено: 02 Июль 2015, 11:46
kreator
SV, видимо, считает, что надо работать только через Mimic Button :D . А к кнопке привязывается просто. В embeds на событие Accepted вызываешь этот шаблон, и всё. Но есть неприятная на мой взгляд недоработка, текст генерится без привязки к координатам:

Код: Выделить всё

LOC:PopupMenuString=PopupMgr18.Ask()

Я обхожу это дело вот так:

Код: Выделить всё

      omit('***')
      
      LOC:PopupMenuString=PopupMgr18.Ask()
      ! [Priority 4999]
      ***
      GetWindowRect(?Export{prop:Handle}, rcCtrl)
      LOC:PopupMenuString = PopupMgr18.Ask(rcCtrl.Left, rcCtrl.Bottom)
      case LOC:PopupMenuString
        of '1'
                do Export1
        of '2'
                do Export2
      end
Может, не знаю чего.

PopUp плюс иконки - проблема

Добавлено: 02 Июль 2015, 20:12
gopstop2007
Спасибо огромное :)
kreator писал(а):

Код: Выделить всё

      omit('***')
      
      LOC:PopupMenuString=PopupMgr18.Ask()
      ! [Priority 4999]
      ***
      GetWindowRect(?Export{prop:Handle}, rcCtrl)
      LOC:PopupMenuString = PopupMgr18.Ask(rcCtrl.Left, rcCtrl.Bottom)
      case LOC:PopupMenuString
        of '1'
                do Export1
        of '2'
                do Export2
      end
Может, не знаю чего.
похожее у меня было вверху :cat: