Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MDI приложения. [D5, Win95/98]


Совчсем новичок ©   (2002-09-09 10:06:00) 

Смешно, но никак не могу вывести на экран дочернюю форму. Стили установил правильно и у главной и у дочерней. Может кто-подскажет как ее выводить


Совсем новичок   (2002-09-09 17:22:00) [1]

Кстати, если открываешь форму (дочернюю) сразу максимизированную то она сразу появляется в обычном размере, и уже потом раскрывается на всю главную форму, это тоже стандарт или нет.


Совсем новичок   (2002-09-09 17:10:00) [2]

Всем спасибо, дочерние формы прятались под ScrollBox. Неужели этого нельзя избежать, пробовал использовать Panel, тоже самое.


NeyroSpace   (2002-09-09 16:55:00) [3]

*\Delphi5\Demos\Doc\Textedit


от меня   (2002-09-09 16:29:00) [4]

И зачем интересно Child.Show()- это лишнее


Игорь Шевченко   (2002-09-09 16:13:00) [5]

Child := TMDIChildForm.Create(Application);
Child.Caption := ....

Child.Show();


от меня   (2002-09-09 16:00:00) [6]

присылай текст


Совсем новичок   (2002-09-09 15:48:00) [7]

Просмотрел даже dfm файлы, все свойства тип-топ. Может у меня глаз замылился, чего-то не вижу. Кто-нить может помочь - взглянуть на исходный текст?


Совсем новичок   (2002-09-09 15:45:00) [8]

Еще раз все проверил, все правильно - а результата нет.


Совсем новичок   (2002-09-09 15:35:00) [9]

Все указано правильно, вот в этом то и весь вопрос что не так. Никаких ошибок нет. Просто не появляется форма и все.


Игорь Шевченко   (2002-09-09 15:20:00) [10]

Осталось только удостоверится, что у главной форму указан FormStyle fsMDIForm, а у TMDIChildForm FormStyle равен fsMDIChild


Совсем новичок   (2002-09-09 15:12:00) [11]

>> от меня - не работает. Вот код
Главная

var
MDIForm: TMDIForm;
implementation
uses Unit2;
{$R *.DFM}
procedure CreateMDIChildForm(Name: string);
var Child: TMDIChildForm;
begin
inc(MDICount);
Child := TMDIChildForm.Create(Application);
Child.Caption := Name;
end;
procedure TMDIForm.ToolButton1Click(Sender: TObject);
begin
CreateMDIChildForm("NONAME");
end;
end.


Дочерняя

type
TMDIChildForm = class(TForm)
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
{$R *.DFM}
procedure TMDIChildForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;


от меня   (2002-09-09 13:41:00) [12]

Эта процедура создает доч. формы. Только не забудь убрать в опциях проекта эту форму из Auto-create forms

procedure CreateMDIChildForm(Name: string);
var Child: TMDIChildForm;
begin
inc(MDICount);
Child := TMDIChildForm.Create(Application);
Child.Caption := Name;
end;


Игорь Шевченко   (2002-09-09 13:40:00) [13]

Совсем новичок (09.09.02 13:31)

А как бы посмотреть ваши действия ? :-)
(Фрагмент кода, или код целиком)


Совсем новичок   (2002-09-09 13:31:00) [14]

Смотрел не помогает.
Там просто дочерняя форма имеет соответствующий стиль, главная соответственно. Добавляю свою форму с именем не MDIChild, а к примеру Form1, и просто исправляю имена. Никаких ошибок но дочерней формы на экране нет!!!


Виктор Щербаков   (2002-09-09 10:22:00) [15]

File|New|Projects|MDI Application
И изучай сгенерированный код.


Наверх

Титульная страница Поиск, карта сайта Написать письмо