На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА
Прежде чем задать вопрос, зайдите в раздел FAQ, возможно там уже есть ответ на него.
Если вы хотите вставить код в сообщение, то пожалуйста выделяйте его тегом [code=dfp] ... [/сode].
Для этого используйте кнопку [code=dfp] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Delphi for PHP.
Модераторы: ViktorXP, vicis
  
> Как узнать что форма открыта в проекте
    Вот вопрос есть
    как узнать программно что страница отображается в редакторе форм

    проблема такая

    есть главная форма index.php
    на ней три панели PanelTop, PanelLeft, PanelCentr
    типа заголовок сайта, левое меню и центр часть
    по нажатию кнопок в левой панели
    инклудим в центральную другие формы
    например CenrPanel1 или CentPanel2

    инклудим динамически т.е. например
    ExpandedWrap disabled
            function btn_4Click($sender, $params)
                     {
       
                       $this->PanelCentr->Include='CenrPanel1.php';
       
                     }


    так вот
    динамически всё хорошо
    но когда вставляеш в дизайнере форм
    прописывая в инспекторе PanelCentr->Include='CenrPanel1.php'

    срабатывает событие onShow формы CenrPanel1
    при этом заинклуженная форма в главной форме не показывается, а свойство PanelCentr->Include= сбрасывается
    т.к. в коде onShow есть переменные, которые на этот момент не определены

    например у меня ругается на это

    ExpandedWrap disabled
                     function LoginPageShow($sender, $params)
                     {
                      global $index;
                      $page =  $_REQUEST[ 'page' ];
      ...



    напрашивается здесь обойти код в режиме дизайна формы
    но как узнать ?

    Добавлено
    забыл сказать что это в DelphiForPhp 1 со вторым апгрейдом работает так
    снёс 2-й, т.к. он испортил 1-й :wall:
    а проект разрабатывался в 1-м

    Эта тема была разделена из темы "Delphi for PHP"
      вопрос снят :)

      так работает
      ExpandedWrap disabled
                        if (!csDesigning)
                             { ...
        правильнее
        ExpandedWrap disabled
          if (($this->ControlState & csDesigning) != csDesigning)
        Я это подсмотрел в исходниках компонентов самой делфи
        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,0192 ]   [ 15 queries used ]   [ Generated: 24.04.24, 23:52 GMT ]