![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Создан проект с материнским окном, в нем MainMenu, при запуске формы при попытке открыть дочернее окно через MainMenu выскакивает ошибка прикрепленная ниже.
текст самого проект(хз нафиг, но выложу вдруг в чем поможет) Код:
program AppName;
uses
Forms,
Main in 'Main.pas' {MainForm},
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {Form2},
Unit3 in 'Unit3.pas' {Form3},
Unit4 in 'Unit4.pas' {Form4},
Unit5 in 'Unit5.pas' {Form5},
Unit6 in 'Unit6.pas' {Form6},
Unit7 in 'Unit7.pas' {Form7},
Unit8 in 'Unit8.pas' {Form8},
Unit9 in 'Unit9.pas' {Form9},
Unit10 in 'Unit10.pas' {Form10},
Unit11 in 'Unit11.pas' {Form11},
Unit12 in 'Unit12.pas' {Form12};
{$R *.RES}
begin
Application.Initialize;
Application.CreateForm(TMainForm, MainForm);
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm4, Form4);
Application.CreateForm(TForm5, Form5);
Application.CreateForm(TForm7, Form7);
Application.CreateForm(TForm8, Form8);
Application.CreateForm(TForm9, Form9);
Application.CreateForm(TForm10, Form10);
Application.CreateForm(TForm11, Form11);
Application.CreateForm(TForm12, Form12);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm6, Form6);
Application.Run;
end. |
|
#2
|
|||
|
|||
|
лучше бы вы выложили тот код, которым вызываете дочернее окно.
|
|
#3
|
||||
|
||||
|
Цитата:
|
|
#4
|
|||
|
|||
|
а на форме этой в OnActive (OnShow) ничего нет?
|
|
#5
|
||||
|
||||
|
Попробуй этот код tform2.create(self)
|
|
#6
|
|||
|
|||
|
оооо, кстати да, не заметил что Form2 не создается автоматически, конечно тогда будет ошибка.
|
|
#7
|
||||
|
||||
|
Код:
begin Application.Initialize; Application.CreateForm(TMainForm, MainForm); Application.CreateForm(TForm3, Form3); Application.CreateForm(TForm4, Form4); Application.CreateForm(TForm5, Form5); Application.CreateForm(TForm7, Form7); Application.CreateForm(TForm8, Form8); Application.CreateForm(TForm9, Form9); Application.CreateForm(TForm10, Form10); Application.CreateForm(TForm11, Form11); Application.CreateForm(TForm12, Form12); Application.CreateForm(TForm2, Form2); Application.CreateForm(TForm6, Form6); Application.Run; end. |
|
#8
|
|||
|
|||
|
мда, вот что значит спать 3 часа в сутки
![]() |
|
#9
|
||||
|
||||
|
Цитата:
предпологаю что нет =) Последний раз редактировалось RusSTEEL, 28.03.2011 в 18:11. |
|
#10
|
||||
|
||||
|
RusSTEEL, нет, это не для тебя было сообщение) покажи модуль Unit2.pas.
|
|
#11
|
||||
|
||||
|
Цитата:
Код:
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBTables, StdCtrls, Grids, DBGrids;
type
TForm2 = class(TForm)
DBGrid1: TDBGrid;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Edit1: TEdit;
Button6: TButton;
Query1: TQuery;
Query2: TQuery;
Query3: TQuery;
Query4: TQuery;
Query5: TQuery;
DataSource1: TDataSource;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
end;
end.создал обычный баттон для пробы вызвать форму с него та же ошибка, я хз че такое Последний раз редактировалось RusSTEEL, 29.03.2011 в 10:33. |
|
#12
|
||||
|
||||
|
ну все правильно. при таком вызове:
Код:
Form2.Show; Код:
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end; |
|
#13
|
||||
|
||||
|
Цитата:
![]() |
|
#14
|
|||
|
|||
|
убери
Код:
Action:=caFree; оставить Код:
Action:=caFree; Код:
Application.CreateForm(TForm2, Form2); |
|
#15
|
||||
|
||||
|
Цитата:
![]() |