Application.CreateForm(TRegForm, RegForm);
RegForm.ShowModal;
почему то RegForm мелькает на экране не задерживаясь ни на секунду!
unit RegUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TRegForm = class(TForm)
lbl1: TLabel;
Label3: TLabel;
Label2: TLabel;
FIO: TEdit;
edtDolgnost: TEdit;
Button2: TButton;
edtUchregdenie: TEdit;
lblUchregdenie: TLabel;
EdtRegion: TEdit;
Label1: TLabel;
btnCancel: TButton;
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
RegForm: TRegForm;
implementation
uses Bilet__Unit, Logic_Unit;
{$R *.dfm}
procedure TRegForm.Button2Click(Sender: TObject);
begin
ModalResult := mrOk;
end;
end.
Здравствуйте, sined, Вы писали:
S>Здравствуйте, Sergey__, Вы писали:
S>Если версия Delphi 2007 и выше то такое может быть
S>при определенных условиях , ключ ко всему это свойства
S>Application.ModalPopupMode и TForm.PopupMode
S>а также как я смог заметить время когда создаются формы
S>если они создаются до показа главной формы то скорее всего
S>все будет ок если же где то динамично после показа главной формы
S>то могут быть описанные эффекты
1) версия Delphi 7,
о PopupMode и ModalPopupMode — Delphi7 не подозревает
2) формы, кроме майн, создаются динамически
procedure TMainForm.FormShow(Sender: TObject);
begin
Application.CreateForm(TRegForm, RegForm);
RegForm.ShowModal;
3) и даже в DFM ничего подозрительного нет:
object RegForm: TRegForm
Left = 465
Top = 344
Width = 286
Height = 404
Caption = #1056#1077#1075#1080#1089#1090#1088#1072#1094#1080#1103' '
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
Position = poDesktopCenter
PixelsPerInch = 96
TextHeight = 13
object lbl1: TLabel
Left = 10
Top = 0
Width = 161
Height = 13
Caption = #1056#1077#1075#1080#1089#1090#1088#1072#1094#1080#1103' '
Visible = False
end
object Button2: TButton
Left = 38
Top = 284
Width = 203
Height = 25
Caption = #1043#1086#1090#1086#1074#1086' ('#1072#1085#1082#1077#1090#1072' '#1079#1072#1087#1086#1083#1085#1077#1085#1072')'
Default = True
ModalResult = 1
TabOrder = 2
OnClick = Button2Click
end
end
Здравствуйте, Sergey__, Вы писали:
Application.CreateForm(TRegForm, RegForm);
RegForm.ShowModal;
S__>почему то RegForm мелькает на экране не задерживаясь ни на секунду!
Есть небольшой вопрос: где ты её создаёшь и зачем?
Вот пример рабочего кода. Форма регистрации показывается по таймеру через минимальное время после создания главной формы:
procedure TFormMain.ShowRegForm(Started: Boolean = true);
var
FormReg: TFormReg;
begin
FormReg := TFormReg.Create(Self);
FormReg.AlreadyStarted := Started;
FormReg.ShowModal;
FormReg.Free;
end;