![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Форма с заставкой
Rubey © (2006-08-28 13:24:00)Сделал форму Form1 с заставкой в форме Form2 следующего вида
var
Form1: TForm1;
implementation
{$R *.dfm}
Var
Zast: TForm2;
Begin
Application.Initialize;
Zast:=TForm2.Create(Application);
Zast.Position:=poDesktopCenter;
Zast.BorderStyle:=bsNone;
Zast.Show;
Zast.Update;
Application.CreateForm(TForm1,Form1);
Sleep(2000);
Zast.Free;
Application.CreateForm(TForm1,Form1);
Application.Run;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Application.CreateForm(TForm3,Form3);
Form3.ShowModal;
end;
end.
Все работает, но когда начинаю на FORM1 накидывать компоненты для обработки ,
(например BitBtn) то в начале процедуры после Application.Run; упорно выдает ошибку
Statment Excepted, but ‘PROCEDURE’ found
Не пдскажете, знатоки, в чем проблема. Битых два часа экспериментировал, но ничего
не получилось. Будк благодарен за помощь.
28.08.2006 Рубей
Rubey (2006-08-28 16:58:00) [1]Cпасибо всем! Заработало все как надо.
Особая благодарность DprYg . Его код помог исправить все ошибки.
Рубей. 28.08.2006
Наиль (2006-08-28 14:49:00) [2]
> var
> Form1: TForm1;
> implementation
Диагноз ясен. Rubey старательно переписал код из какой-то книжки прямо в pas-файл. Rubey, скажу тебе по секрету, что splash пишется в dpr-файл (Project|View Source)
DprYg (2006-08-28 14:48:00) [3]
> Создаешь новую форму, делаешь ее available. Устанавливаешь
> св-ва в fsStayOnTop и poScreenCenter. Затем ставишь на нее
> таймер.
Это в ИСР руками, а не программно.
DprYg (2006-08-28 14:46:00) [4]Вот это самое простое. Создаешь новую форму, делаешь ее available. Устанавливаешь св-ва в fsStayOnTop и poScreenCenter. Затем ставишь на нее таймер. Вот код:
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls;
type
TForm2 = class(TForm)
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
uses Unit1;
procedure TForm2.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled := false;
if Form1.Visible then Close;
end;
end.
А это код проекта:
program Project1;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {Form2};
{$R *.res}
begin
Application.Initialize;
Form2 := TForm2.Create(Application);
Form2.Show;
Form2.Update;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Korshun (2006-08-28 14:42:00) [5]Нельзя в Splash - форме писать процедуры! Сам c этой прорблемой сталкивался.
Korshun (2006-08-28 14:41:00) [6]Нельзя в Splash - форме писать процедуры! Сам С этой прорблемой сталкивался.
Rubey (2006-08-28 14:23:00) [7]Да, зто проект с двумя формами : Form1- головная с кнопками выбора опций и Form2 - заставка. И все работает, пока не вставвляются кнопки обработки опций ( в частности ) - BitBtn на главную форму. Если это принципиально невозможно, то подскажите, как реализовать правильно форму с заставкой.
С уважением - Рубей.
Ketmar (2006-08-28 13:32:00) [8]какой чудный поток сознания. какая трава-то, а? почему вместо изучения языка народ предпочитает траву курить, а?
C@N (2006-08-28 13:28:00) [9]что-то тут не так.... ((( (_!_) - чую )))
Anatoly Podgoretsky (2006-08-28 13:25:00) [10]А похоже на проект, а не форму