Форум: "Основная";
Текущий архив: 2002.06.10;
Скачать: [xml.tar.bz2];
ВнизCPU Window Найти похожие ветки
← →
Explorer (2002-05-28 12:38) [0]Мастера!
Запускаю проект. Все работает. И сразу его закрываю - ошибка CPU Window. Может вы поможите разобраться?
Вот код:
unit MainForm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Menus, ComCtrls, DBTables, DB, StdCtrls, Mask, ExtCtrls, jpeg, RxGIF;
var
VarFormCellCreated:boolean=false; //
← →
Игорь Шевченко (2002-05-28 12:53) [1]Form.Destroy не надо. Лучше Form.Free; Form := nil;
И еще, какие из форм создаются в dpr и в какой последовательности?
← →
Explorer (2002-05-28 12:57) [2]>Игорь Шевченко
1. Сейчас попробую
2. В таком порядке:
program ProjectCells;
uses
Forms,
MainForm in "MainForm.pas" {MainF},
DateModule in "Forms\DateModule.pas" {DatasModule: TDataModule},
FormPayment in "Forms\FormPayment.pas" {FormPayments},
Factura in "Forms\Factura.pas" {FormFacturas},
Order in "Forms\Order.pas" {FormOrder};
{$R *.RES}
begin
Application.Initialize;
Application.CreateForm(TMainF, MainF);
Application.CreateForm(TDatasModule, DatasModule);
Application.CreateForm(TFormPayments, FormPayments);
Application.CreateForm(TFormFacturas, FormFacturas);
Application.CreateForm(TFormOrder, FormOrder);
Application.Run;
end.
← →
Андрей Сенченко (2002-05-28 13:07) [3]>> Explorer © (28.05.02 12:57)
А зачем Ты создаешь их все сразу ? Создавай по мере надобности и делай Form.Free при закрытии надолго.
← →
Explorer (2002-05-28 13:20) [4]>Андрей Сенченко
А как их создавать по мере надобности?
Или ручками?
← →
Игорь Шевченко (2002-05-28 14:25) [5]TMainF.FormClose - убрать MainF.Destroy
Нафиг! - это источник CPU Window
← →
Explorer (2002-05-28 15:30) [6]>Игорь Шевченко
*.Destroy лучше вообще ВЕЗДЕ по убирать?
← →
Андрей Сенченко (2002-05-28 15:41) [7]>> Explorer © (28.05.02 13:20)
По мере надобности - значит при вызове. На клик кнопки, которая должна например открыть окно "Счета-Фактуры" ( судя по назвааниям форм ) вешаешь первым делом Form.Create
При выходе ( закрытии на продолжительное время ) - делаешь Form.Free
Form.Destroy убирай везде.
← →
Explorer (2002-05-29 06:15) [8]>Андрей Сенченко ©
А можно пример кода (который надо повесить на кнопку)?
← →
Anatoly Podgoretsky (2002-05-29 09:04) [9]Explorer © (29.05.02 06:15)
Так у тебя пример есть, вот этот
procedure TMainF.N5Click(Sender: TObject);
begin
Application.CreateForm (TFormChangeAccounts,FormChangeAccounts);
FormChangeAccounts.ShowModal;
FormChangeAccounts.Destroy;
end;
Только его лучше переделать
procedure TMainF.N5Click(Sender: TObject);
begin
with TFormChangeAccounts do
try
ShowModal;
finally
Free;
end;
end;
← →
Anatoly Podgoretsky (2002-05-29 09:05) [10]Маленькая ошибка
with TFormChangeAccounts.Create(Self) do
← →
Explorer (2002-05-29 09:36) [11]Заработало!
Всем Большое СПАСИБО!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.10;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c