Всем привет дорогие друзья. Сегодня небольшая заметка о том, как можно создавать форму (окно) в Delphi по определенному условию. Многие из нас знают, что формы в Delphi (в своем проекте) создаются сразу. Конечно, можно сделать так, чтобы они создавались по мере надобности, чтобы не занимать память. В данной статье мы и рассмотрим это.
Для примера я возьму форму авторизации с запоминанием логина и пароля. То есть, пользователь ввел логин и пароль при первом запуске программы и нажал на кнопку запомнить, чтобы при следующем запуске это окно не появлялось.
Сложность может еще заключаться и в том, что форма, которая должна показываться/не показываться (в зависимости от условия) и создается первой, то есть, она является как бы главной. Но проблема решается очень просто. Для этих целей нам необходимо лишь подкорректировать файл с расширением *.dpr. Поэтому, открываем список модулей и выбираем название нашего dpr-файла (у меня он называется Project1.dpr):
Из данного списка я выбираю модуль Project1, в котором мне необходимо просто дописать нужное мне условие, для нужной формы. То есть, чтобы формы создавались в нужном порядке и в нужное для Вас время, код будет выглядеть примерно так:
program Project1;
uses
IniFiles, Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Dialogs, StdCtrls, Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {Form2},
Unit3 in 'Unit3.pas' {Form3};
{$R *.res}
var
Ini:TIniFile;
begin
Ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'Setting\Setting.ini');
Application.Initialize;
if Trim(Ini.ReadString('Authorization','login',''))='' then
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
FreeAndNil(Ini);
Application.Run;
end.
Отсюда мы видим. Что если в файле настроек введено поле логина, то значит пользователь уже один раз авторизировался в программе, а это означает, что нам не надо больше показывать форму авторизации. Если мы с файла настроек удалим данные логина, то форма появится. Такое очень удобно делать с реестром (сохранять туда данные). Если Вы Windows переустановите, то данные там все изменятся, а значит и заново придется вводить в окно авторизации.
Теперь Вы знаете, как в Delphi по условию создавать форму. Из данного примера становится все очень быстро, удобно, а самое главное просто.
Также советуем почитать на PressDev.RU
Короткая ссылка: http://pressdev.ru/?p=4458