Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ProgressBar, заставка программы 
:(
    Опции темы
windy
Дата 19.2.2005, 20:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.11.2004

Репутация: нет
Всего: нет



проблема в следующем: когда запускается эта форма, то прогресБар уже полностью заполнен и дальше ни одна форма не запускается, а если запускается, то вот эта не закрывается. что с этим делать?



object Form4: TForm4
Left = 195
Top = 182
BorderStyle = bsNone
Caption = 'logo'
ClientHeight = 360
ClientWidth = 786
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
FormStyle = fsStayOnTop
OldCreateOrder = False
Position = poScreenCenter
PrintScale = poNone
ScreenSnap = True
Visible = True
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object Image1: TImage
Left = 0
Top = 0
Width = 786
Height = 343
AutoSize = True
Picture.Data = {картинка }
end
object StatusBar1: TStatusBar
Left = 0
Top = 341
Width = 786
Height = 19
Panels = <
item
Width = 200
end
item
Width = 20
end
item
Width = 20
end
item
Alignment = taCenter
Style = psOwnerDraw
Width = 50
end>
end
object ProgressBar1: TProgressBar
Left = 0
Top = 344
Width = 201
Height = 17
Min = 10
Position = 10
TabOrder = 1
end
object Timer1: TTimer
Interval = 5000
OnTimer = Timer1Timer
Left = 88
Top = 56
end
end

PM MAIL   Вверх
Stalker Ghost
Дата 19.2.2005, 23:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 41
Регистрация: 11.11.2004
Где: между столом и ст улом

Репутация: 1
Всего: 2



А как ты реализируешь отображение Splash Screen'а (заставка в смысле)?¿

P.S: в DRKB была статья про Splash Screen'ы, посмотри
PM MAIL MSN   Вверх
The MASTER
Дата 20.2.2005, 00:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Old master)
**


Профиль
Группа: Участник
Сообщений: 862
Регистрация: 19.7.2004
Где: Санкт-Петербург

Репутация: нет
Всего: 5



Выложи код выполнения действий твоего прогресс бара!
PM MAIL WWW ICQ   Вверх
windy
Дата 23.2.2005, 18:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.11.2004

Репутация: нет
Всего: нет



Код

unit logoform;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, jpeg, ExtCtrls, ComCtrls, CommCtrl;

type
  TForm4 = class(TForm)
    Image1: TImage;
    StatusBar1: TStatusBar;
    ProgressBar1: TProgressBar;
    Timer1: TTimer;
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form4: TForm4;

implementation

uses raketa3;

{$R *.dfm}

procedure TForm4.FormCreate(Sender: TObject);
begin
with ProgressBar1 do
  begin
    Parent := StatusBar1;
    Position := 100;
    Top := 2;
    Left := 0;
    Height := StatusBar1.Height - Top;
    Width := StatusBar1.Panels[0].Width - Left;
  end;
if ProgressBar1.Max=100 then Form3.Show;
end;
procedure TForm4.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled := false;
end;

end.








из сборника статей dw6 с сайта www.delphiworld.ru



Перед появлением главного окна во всех серьёзных приложениях сначала появляется заставка. Теперь и у Вас есть возможность повыёживаться! Для создания заставки выполняем следующую последовательность действий:

Начинаем создание нового приложение командой “New Application” (“Новое приложение”) из меню “File” (“Файл”)

Добавьте ещё одну форму: “New Form”(“Новая форма”) из меню “File” (“Файл”). Это окно и будет заставкой. У него нужно убрать рамку с полосой заголовка, установив свойство “BorderStyle” в “bsNone”. Теперь можно смело разработать дизайн окна заставки.

Из меню “Project” (“Проект”) выбрать команду “Options”(“Опции”). Зайти на закладку “Forms”(“Формы”) и Form2 из списка автоматически создаваемых форм (Auto-Create forms) перенести в список доступных форм (Available forms)

На форму-заставку с закладки System вынести компонент Timer. В его свойстве Interval установить значение 5000, а в событии OnTimer написать:



Timer1.Enabled := false;




Это сделано для того, чтобы заставка была видна в период указанного времени – 5000 миллисекунд, т.е. 5 секунд.

Перейти в файл проекта, нажав Ctrl+F12 и выбрав Project1. Исходный код должен выглядеть так:



Код

program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas' {Form2};

{$R *.RES}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
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;
  while Form2.Timer1.Enabled do
    Application.ProcessMessages;
  Application.CreateForm(TForm1, Form1);
  Form2.Hide;
  Form2.Free;
  Application.Run;
end.


Это сообщение отредактировал(а) Girder - 15.12.2005, 17:30
PM MAIL   Вверх
Stalker Ghost
Дата 24.2.2005, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 41
Регистрация: 11.11.2004
Где: между столом и ст улом

Репутация: 1
Всего: 2



Прости критику но криво однако. Надо бы так:
Код


procedure TForm4.FormCreate(Sender: TObject);
begin
with ProgressBar1 do
begin
Parent := StatusBar1;
Position := 0;
Length:=100;
Top := 2;
Left := 0;
Height := StatusBar1.Height - Top;
Width := StatusBar1.Panels[0].Width - Left;
end;
end;

procedure TForm4.Timer1Timer(Sender: TObject);
begin
 ProgressBar1.Position:=ProgressBar1.Position+20;//таймер на 5000 и включен
 If ProgressBar1.Position=100 then Timer1.Enabled := false;
end;


Код проекта:
Код

program Project1;

//здеся файли где формы
uses
Forms,
Unit1 in 'Unit1.pas' {Form3!!!!!!},
Unit2 in 'Unit2.pas' {Form4!!!!!};

{$R *.RES}

begin
Application.Initialize;
Form4 := TForm4.Create(Application);
Form4.Show;
Form4.Update;
while Form4.Timer1.Enabled do
Application.ProcessMessages;
Application.CreateForm(TForm3, Form3);
Form4.Hide;
Form4.Free;
Application.Run;
end.




Пробуй, если что обращайся smile
PM MAIL MSN   Вверх
DrBugy
Дата 15.12.2005, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 26.11.2005

Репутация: нет
Всего: нет



А кто нибудь знает как сделать это без форм?
PM MAIL   Вверх
Snowy
Дата 15.12.2005, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 18
Всего: 484



Цитата(DrBugy @ 15.12.2005, 17:13)
А кто нибудь знает как сделать это без форм?

ProgressBar без форм?
А смысл?
Что ты хочешь получить в результате?
PM MAIL   Вверх
VVSF
Дата 16.12.2005, 00:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 16.11.2005

Репутация: нет
Всего: нет



DrBugy, попытайся простосделатьпрогрессбар невидимым, после того, как он отработал свою ф-ю.Т.е. помести его на нужную форму, а потом скрой его. Тебе просто надо сделать вид "загрузки"??? Если да - то могу подсобить...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.0832 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.