Главная форма
FormStyle: fsMDIForm;
Name:Form1;
Дочерняя
FormStyle: fsMDIChild;
Name:Form2;
Код
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2:=TForm2.Create(nil);//форма не появляется,в чём проблема?
end;
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
| Vardes |
Сообщение
#1
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 131 Пол: Мужской Репутация: 0 |
При создании дочерней формы, она не появляется на экране при вызове её из главной формы(
Главная форма FormStyle: fsMDIForm; Name:Form1; Дочерняя FormStyle: fsMDIChild; Name:Form2; Код procedure TForm1.Button1Click(Sender: TObject); begin Form2:=TForm2.Create(nil);//форма не появляется,в чём проблема? end; |
![]() ![]() |
| мисс_граффити |
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
Забыл про
Form2.Show; что-нибудь одно... -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
| Vardes |
Сообщение
#3
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 131 Пол: Мужской Репутация: 0 |
|
| volvo |
Сообщение
#4
|
|
Гость |
Цитата это всё указано...всё равно не работает... ГДЕ указано? Ты что, на форуме телепатов? В том куске, что ты ПОКАЗАЛ - этого нет. Или показывай проект, или иди в google - там есть форумы другой направленности! |
| Vardes |
Сообщение
#5
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 131 Пол: Мужской Репутация: 0 |
Это ведь всё можно указать в инспекторе объектов...тем более метод Show не надо указывать при создании формы, она и так должна высветится...
У меня вот такой вопрос появился, какое св-во отвечает за то, что дочерняя форма становится прозрачной по отношению к главной? |
| TarasBer |
Сообщение
#6
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Это ведь всё можно указать в инспекторе объектов...тем более метод Show не надо указывать при создании формы, она и так должна высветится... У меня вот такой вопрос появился, какое св-во отвечает за то, что дочерняя форма становится прозрачной по отношению к главной? Эээ... А если она есть в инспекторе объектов, то это не значит, что она сама создаётся? В смысле, что писать креате не надо... Просто Form2.Show и всё... -------------------- |
| klem4 |
Сообщение
#7
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Цитата тем более метод Show не надо указывать при создании формы, она и так должна высветится... Это если форма создается приложением (как главная форма), а дочернюю ты как бы сам создаешь, динамически, и вызывая конструктор TForm.Create(AOwner: TComponent) ничего "высвечиться" не должною. Посмотри аттач, этот проект у тебя нормально работает ? Прикрепленные файлы
_forum.rar ( 161.57 килобайт )
Кол-во скачиваний: 260-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
| Vardes |
Сообщение
#8
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 131 Пол: Мужской Репутация: 0 |
Да...я также у себя сделал(именно такой же пример)...всё работает...только вот не понимаю, почему дочерняя форма является прозрачной...
А вот втсавляю дочернюю форму в свой проект, не работает(((Может я какое-нить свой-во главной формы не так указал... |
| klem4 |
Сообщение
#9
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
А вторая форма обязательно должна быть дочерней ? Тоесть чтобы ее можно было пермещать только "внутри" главной ?
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
| Vardes |
Сообщение
#10
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 131 Пол: Мужской Репутация: 0 |
Ну да...хотелось бы...Дело в том, что как я уже говорил, помещая форму Fsnormal, всё работает...И вот ещё, почему же дочерняя форма прозрачная?
Добавлено через 19 мин. Понял теперь в чём проблема...У меня на главной форме есть компонент как Pagecontrol...из-за него дочерней формы как раз и не видно...осталось понять, как её сделать видимой, и чтоб она вылезала поверх всех окон) Добавлено через 2 мин. Теперь я понял в чём проблема...у меня на главной форме есть компонет PageControl...из-за него и не видно дочерней формы...Теперь вопрос,как её сделать видимой (чтоб она поверх всех окон вылезала)? Добавлено через 3 мин. Теперь я понял в чём проблема...у меня на главной форме есть компонент PageControl, из-за него как раз и не видно дочерней формы...Теперь осталось разобраться с её видимостью))) |
| Vardes |
Сообщение
#11
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 131 Пол: Мужской Репутация: 0 |
Понял, в чём у меня была проблема...У главной формы есть компонент PageControl, поэтому дочернего окна не было видно...Проблема исправилась, сделав FormStyle=fsStayOnTop...Вопрос, в чём же тогда разница между mdichild и stayontop, нельзя ли мою проблему исправить, пользуясь mdichild (нужно,чтоб дочерняя форма не вылезала за пределы главной)?
Сообщение отредактировано: Vardes - |
![]() ![]() |
|
Текстовая версия | 8.11.2025 3:47 |