Доступ к компонентам на динамически созданных формах

отредактировано May 2014 Раздел: FastScript
Приветствую,

надеюсь на вашу помощь.


Создаю в Run-Time формы
Form := TAForm.CreateNew(Application);

так же создаю в Run-Time компоненты на этих формах.

добавляю все формы в скрипт
fsGlobalUnit.AddForm


и теперь в случае, если на двух разных формах, имеются компоненты с одинаковыми именами, я имею доступ к свойствам компонента из скрипта, только к первому созданному.

т.е. если запустить скрипт:
ShowMessage(Form1.Edit1.Text);
ShowMessage(Form2.Edit1.Text); //! здесь я получу текст из Form1.Edit1.Text


в случае если на Form2 компонент будет называться не Edit1, а например Edit2, то все ок.



Помогите, перепробовал все, что смог придумать, решения не нашел (

Комментарии

  • Stalker4Stalker4 123
    отредактировано 16:43
    DriveSoft написал: »
    Приветствую,

    надеюсь на вашу помощь.
    Создаю в Run-Time формы
    Form := TAForm.CreateNew(Application);

    так же создаю в Run-Time компоненты на этих формах.

    добавляю все формы в скрипт
    fsGlobalUnit.AddForm
    и теперь в случае, если на двух разных формах, имеются компоненты с одинаковыми именами, я имею доступ к свойствам компонента из скрипта, только к первому созданному.

    т.е. если запустить скрипт:
    ShowMessage(Form1.Edit1.Text);
    ShowMessage(Form2.Edit1.Text); //! здесь я получу текст из Form1.Edit1.Text
    в случае если на Form2 компонент будет называться не Edit1, а например Edit2, то все ок.
    Помогите, перепробовал все, что смог придумать, решения не нашел (
    А если формы создаются не динамически, а в дизайнере, то тоже будет такая же ерунда ?

    А так я бы просто посоветовал разименовать компоненты.
  • отредактировано 16:43
    Stalker4 написал: »
    А если формы создаются не динамически, а в дизайнере, то тоже будет такая же ерунда ?

    А так я бы просто посоветовал разименовать компоненты.

    Когда в дизайнере то все ок.
    У моего проекта к сожалению такая специфика, что одинаковые имена компонентов все таки могут сделать на разных формах.
  • Stalker4Stalker4 123
    отредактировано 16:43
    DriveSoft написал: »
    Когда в дизайнере то все ок.
    У моего проекта к сожалению такая специфика, что одинаковые имена компонентов все таки могут сделать на разных формах.
    Тогда советую сделай демку ошибки и отошли ее с соответствующими пояснениями в support@fast-report.com
  • отредактировано June 2014
    написал:
    Когда в дизайнере то все ок.
    У моего проекта к сожалению такая специфика, что одинаковые имена компонентов все таки могут сделать на разных формах.
    да и у меня не всегда так

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.