Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите разобраться, Проподают данные 
:(
    Опции темы
Svetkin
Дата 21.2.2006, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 7.4.2004

Репутация: нет
Всего: нет



Есть код по созданию окон...
Код

        template <class T1, class T2, class T3, class T4>
        //(указатели на создаваемое окно, его датаформу, заголовок, родителя)
        void NewWindow(T1 *&Child, T2 *&DataChild, T3 imgIndex, T4 WinOwner)
            {
            //--- определяем существует ли такое окно ----
            int i = FindTabs(imgIndex);
             //--- начинаем создавать новое ----
            if (i == -1)
              {
               Screen->Cursor = crSQLWait;
               DataChild = new T2(WinOwner);
               ListData->Add((TObject *)DataChild);
               Child = new T1(WinOwner);
               Child->Handle;
               Child->OnDestroy = ChildFormClose;
               Sheet = new TcxTabSheet(pcWinControl);
               Sheet->PageControl = pcWinControl;
               Sheet->Caption = Child->Caption;
               pcWinControl->HandleNeeded();
               Child->ManualDock(Sheet,NULL,alClient);
               pcWinControl->ActivePageIndex = FindTabs(Child->Caption);
               pcWinControl->ActivePage->OnShow = Child->OnShow;
               pcWinControl->ActivePage->ImageIndex = imgIndex;
               Child->Show();
               Screen->Cursor = crDefault;
              }
             else
              {
               MessageDlg("Запускаемое окно уже открыто!!!!!!!",mtInformation, TMsgDlgButtons()<<mbOK,0);
               pcWinControl->ActivePageIndex = i;
              }
            }


в нужный момент вызываю функцию для содания:
Код

  TWinAccDoc *AccDoc, *NaklDoc, *InvoiceDoc;
 TDataAccDoc *DataAcc, *DataNaklDoc, *DataInvoiceDoc;

 switch (ASender->Tag)
   {
    case 0:{
            TypeForm = ASender->Tag;
            NewWindow(AccDoc, DataAcc, ASender->Tag, MainForm);
            break;
           }
    case 1:{
            TypeForm = ASender->Tag;
            NewWindow(NaklDoc, DataNaklDoc, ASender->Tag, MainForm);
            break;
           }
   }



при создании двух форм, а в последстивии закрытии одной из них изчезает вся информация
как этого избежать????????
PM MAIL   Вверх
chwind
Дата 21.2.2006, 17:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 15.2.2006

Репутация: 1
Всего: 1



Цитата(Svetkin @ 21.2.2006, 17:41 Найти цитируемый пост)
изчезает вся информация

Тоесть, непонял, какая информация???

PM MAIL   Вверх
Svetkin
Дата 21.2.2006, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 7.4.2004

Репутация: нет
Всего: нет



все что было выведено в гриде и т.д., исчезает...

на форме остаются "голые" компоненты
PM MAIL   Вверх
chwind
Дата 21.2.2006, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 15.2.2006

Репутация: 1
Всего: 1



К сожалению проблема остается не понятной, так как не ясно где лежит грид, как он зависит от закрывающейся формы и т.д.
Но все равно предлагаю посмотреть что происходит в деструкторе закрывающеся формы (или в ее методе onClose)
еще было бы полезно пройтись по коду дебагером.
PM MAIL   Вверх
sexton
Дата 22.2.2006, 08:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sexton=Пономарь (eng)
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 5.5.2004
Где: Ульяновск

Репутация: 5
Всего: 9



А где у тебя лежат компоненты доступа у данным? Не на той ли форме, которая закрывается?
PM MAIL WWW ICQ   Вверх
Svetkin
Дата 22.2.2006, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 7.4.2004

Репутация: нет
Всего: нет



Доступ к данным лежит на DataModul который создается вместе с основной формой...

я же пытаюсь создать несколько экземпляров и чтобы они были независимы друг от друга, а получается что при уничтожении однго из экземпляров на других пропадают все выведенные данные...
PM MAIL   Вверх
sexton
Дата 22.2.2006, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sexton=Пономарь (eng)
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 5.5.2004
Где: Ульяновск

Репутация: 5
Всего: 9



Что-то я совсем перестал понимать... мож скриншоты помогут?
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0472 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.