[ШВС] [Extensions] EditList - редактирование по месту

Программы на Clarion, шаблоны, библиотеки и пр.

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Гость

Сообщение Гость »

Hello clalist,

Христос воскрес!
:)

а заодно и вопрос по ШВС(Clarion):

1. Создаю процедуру - Window. Делаю его модальным (Modal).
2. Размещаю на ней (Populate) BrowseBox
3. Связываю его с таблицей и т.д.
4. Добавляю BrowseUpdateButtons
5. Добавляю Extension - EditList (редактирование по месту)
6. Запускаю. При открытии окна вижу Runtime error:

Unable to create control (System is MODAL)
Do you want to GPF?

Как это побороть и откуда оно взялось?


Еще раз с праздником!!!

--
Best regards,
Иван mailto:shkmail@inbox.ru



(Добавление)

Основной принцип работы любой EIP - создание нового контрола по типу данных из текущей колонки бровза, наложение этого контрола на нужную ячейку бровза, редактирование данных именно в этом созданном контроле.
Понятно теперь - откуда взялось?

А как побороть - убери модальность окна.

=============================
С уважением, Олег А. Руденко.
Oleg_Rudenko@mail.ru
Oleg_Rudenko@mail333.com
Библиотека DynaLib
http://dynalib.narod.ru

(Добавление)
а заодно и вопрос по ШВС(Clarion):
к ШВС это не имеет отношения - ибо на лицо общая проблема в невозможности создаения контрола в модальном окне.
Как это побороть и откуда оно взялось?

Данные:

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

LOC:lSavedModalStatus LONG,AUTO
LOC:lNoModalStatus    LONG(0)
    
  COMPILE('! Standalone Model',dll_mode)
WslWind:pFrame   LONG,EXTERNAL,NAME('WslWind@pFrame')
    COMPILE('***',_C55_)
OFFSET:MODAL      EQUATE(-4)                 ! Offset for C55
    ***
    OMIT('***',_C55_)
OFFSET:MODAL      EQUATE(-20)                ! Offset for C5
    ***
  ! Standalone Model
  OMIT('! Local Model',dll_mode)
WslWind:Modal LONG,EXTERNAL,NAME('WslWind@Modal')
  ! Local Model
Код после открытия окна до создания конролов - сброс флага
модальности:

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

    COMPILE('***',dll_mode)
  PEEK(WslWind:pFrame + OFFSET:MODAL,LOC:lSavedModalStatus)
  POKE(WslWind:pFrame + OFFSET:MODAL,LOC:lNoModalStatus)
    ***
    OMIT('***',dll_mode)
  LOC:lSavedModalStatus = WslWind:Modal
  WslWind:Modal = LOC:lNoModalStatus
      ***

Код после создания контролов - восстановление сохраненного флага модальности:

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

    COMPILE('***',dll_mode)
  POKE(WslWind:pFrame + OFFSET:MODAL,LOC:lSavedModalStatus)
    ***
    OMIT('***',dll_mode)
  WslWind:Modal = LOC:lSavedModalStatus
      ***
--
Best regards,
Vadim mailto:vadim@softcreator.com
ICQ: 82308757

(Добавление)
к ШВС это не имеет отношения - ибо на лицо общая проблема в невозможности создаения контрола в модальном окне.
Это сообщение появляется только при добавлении Extension - EditList (редактирование по месту)
Данные:
что это значит и для чего это Вы привели?

Иван Шкуропадский <shkmail@inbox.ru>
Это сообщение появляется только при добавлении Extension - EditList (редактирование по месту)
Рекомендую в простом тестовом приложении на рукописном проекте (без всяких шаблонов) - из одного модального окна попробовать создать контрол динамически.
Либо в ABC-приложении воспользоваться EIP-фичей в модальном окне...
что это значит и для чего это Вы привели?
Был вопрос - как это побороть. Я дал на него ответ.
Может я не понял вопроса?

--
Best regards,
Vadim

не, это я не понял ответа (поначалу)
:)

СПАСИБО за помощь!!!

--
Best regards,
Иван
Написал: ClaList(2)
Ответить