![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
chiffa |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 734 Регистрация: 11.11.2003 Репутация: нет Всего: -1 |
Добрый день. Делаю следующее: создаю дочернее окно (Form2) в нем по oncreat создаю вкладку:
Далее на родительской форме (Form1) есть кнопка которая должна добавлять вкладки на Form2, но это не происходит, а выдает ошибку (обращение к памяти и т.д.), при этом первая вкладка создается нормально. ОТсюдова возникает вопрос: как из родительского окна правильно создать обьект в дочернем?... Заранее благодарен всем за помощь! |
|||
|
||||
maniaks1 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 16.12.2006 Репутация: нет Всего: нет |
Наверно что то делаеш неправильно. Проблем быть не должно.
Присоединённый файл ( Кол-во скачиваний: 4 ) ![]() |
|||
|
||||
chiffa |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 734 Регистрация: 11.11.2003 Репутация: нет Всего: -1 |
Так то работает... а в дочернем окне? (МидиЧайлд...)
|
|||
|
||||
maniaks1 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 16.12.2006 Репутация: нет Всего: нет |
Извиняюсь, не вник в суть. Может так?
Присоединённый файл ( Кол-во скачиваний: 4 ) ![]() |
|||
|
||||
chiffa |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 734 Регистрация: 11.11.2003 Репутация: нет Всего: -1 |
Странно что то... Переношу все как у тебя, но ругается на строку T := TTabSheet.Create(FrmShPgCont);
Правда у меня еще Дочернее окно создается по клику TFrmShow.Create (Application); |
|||
|
||||
maniaks1 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 16.12.2006 Репутация: нет Всего: нет |
сделай минимальный пример как делаеш, вечером гляну
|
|||
|
||||
chiffa |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 734 Регистрация: 11.11.2003 Репутация: нет Всего: -1 |
И создание вкладок идет из другого дочернего окна, может это как влияет...
|
|||
|
||||
chiffa |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 734 Регистрация: 11.11.2003 Репутация: нет Всего: -1 |
Выкладываю "пример". Буду крайне признателен за помощь.
Присоединённый файл ( Кол-во скачиваний: 3 ) ![]() |
|||
|
||||
maniaks1 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 16.12.2006 Репутация: нет Всего: нет |
Окно создал... но оно не активное, а активное то, на котором у тебя кнопка и на нём естественно нету PageControl)
В этом случае ActiveMDIChild тебе не помощник. procedure TForm2.btn1Click(Sender: TObject); var Form3:TForm3; begin //if open_form = False then TForm3.Create (Application); //else //TForm3(ActiveMDIChild).NewPage('Íîâàÿ âêëàäêà'); if open_form then exit; Form3:=TForm3.Create(Application); Form3.NewPage('Íîâàÿ âêëàäêà'); Form3:=nil; Form3.Free; end; Присоединённый файл ( Кол-во скачиваний: 4 ) ![]() |
|||
|
||||
chiffa |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 734 Регистрация: 11.11.2003 Репутация: нет Всего: -1 |
А как тогда такое реализовать?.....
|
|||
|
||||
maniaks1 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 16.12.2006 Репутация: нет Всего: нет |
Я же показал как это без ошибок сделать.
Если у тебя форма созда]тся в одном месте, а вкладки из другого, то имеет смысл перебрать все дочерние окна Например так: for i:=0 to Form1.MDIChild.....Count-1 do if TForm3(Form1.MDIChild.....[i]).Caption='Нужная форма' then TForm3(Form1.MDIChild....[i]).NewPage('Новая вкладка'); Можно также перебирать по tag (при создании присваивать) Или по имени класса. |
|||
|
||||
chiffa |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 734 Регистрация: 11.11.2003 Репутация: нет Всего: -1 |
Огромное спасибо!!!! То что нужно!
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |