Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 18.12.2009, 10:05
kinderpingui20 kinderpingui20 вне форума
Прохожий
 
Регистрация: 14.12.2009
Сообщения: 11
Репутация: 10
По умолчанию Помогите с "лёгкой" (не для меня:D) проблемкой

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  I: Integer;
  g: integer;
begin
for I := 1 to 1000000  do
begin
    for g := 1 to 1000  do
      if g=1000 then label1.Caption:=IntToStr(g);
label1.visible:=true;
begin
    for g := 1 to 1000  do
      if g=1000 then label1.Caption:=IntToStr(g);
label2.visible:=true;
begin
    for g := 1 to 1000  do
      if g=1000 then label1.Caption:=IntToStr(g);
label3.visible:=true;
begin
    for g := 1 to 1000  do
      if g=1000 then label1.Caption:=IntToStr(g);
label4.visible:=true;

end;
end;
end;
end;
end;
end.
Admin: Пользуемся тегами!

1.При нажатии кнопки проходит 10сек в 1 лебеле появляется число 1000.
2.при 2 нажатии надо чтобы тоже проходило 10 сек и появялось во 2 лебеле число 1000.
3.итак далее.
у меня ограничевается всё 1 этапом=(
что я не правильно делаю?

Последний раз редактировалось Admin, 18.12.2009 в 10:16.
Ответить с цитированием
  #2  
Старый 18.12.2009, 11:11
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Опупеть...
Все неправильно.
Добавляете в класс формы переменную i
Код:
TForm1 = class(TForm)
 i: Integer;
 ...
 end;
В событии инициализации формы, обнуляете i
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
 i := 0;
end;
Кидаете на форму компонент TTimer. Устанавливаете для него интервал 10000
В событии кнопки пишете:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
 Timer1.Enabled := True;
end.
В событии таймера пишете:
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Inc(i);
 if i > 4 then i := 0;
 case i 
 of 1: label1.Caption:='1000';
     2: label2.Caption:='1000';
     3: label3.Caption:='1000';
     4: label4.Caption:='1000';
 end;
 Timer1.Enabled := False;
end.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #3  
Старый 18.12.2009, 12:27
kinderpingui20 kinderpingui20 вне форума
Прохожий
 
Регистрация: 14.12.2009
Сообщения: 11
Репутация: 10
По умолчанию

Код HTML:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Button1: TButton; Timer1: TTimer; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var i:integer; begin i:=0; end; procedure TForm1.Button1Click(Sender: TObject); begin Timer1.Interval:=1000; Timer1.Enabled := True; end; procedure TForm1.Timer1Timer(Sender: TObject); var i:integer; begin if i > 4 then i := 0; case i of 1: label1.Caption:='1000'; 2: label2.Caption:='1000'; 3: label3.Caption:='1000'; 4: label4.Caption:='1000'; end; Timer1.Enabled := False; end; end.

запускается но не пашет=(вроде всё сделал как Вы написали
Ответить с цитированием
  #4  
Старый 18.12.2009, 12:57
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Вот рабочий код. Сравните и найдете минимум три ошибки.
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Timer1: TTimer;
    Button1: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    i: Integer;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 i:=0;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 Timer1.Interval:=1000;
 Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Inc(i);
 if i > 4 then i := 0;
 case i
 of 1: label1.Caption:='1000';
    2: label2.Caption:='1000';
    3: label3.Caption:='1000';
    4: label4.Caption:='1000';
 end;
 Timer1.Enabled := False;
end;

end.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #5  
Старый 18.12.2009, 15:28
kinderpingui20 kinderpingui20 вне форума
Прохожий
 
Регистрация: 14.12.2009
Сообщения: 11
Репутация: 10
По умолчанию

Ой я балван=)))списать нормально не могу=))всё чётко пашет при каждом нажатии на кнопку открывается новый левел через определенный заданный интервал.А можно сделать чтобы нажал 1 раз на кнопку и они открылись все сами так же через интервал?!
заранее спс=)2 раз уже помогаешь+)))
Ответить с цитированием
  #6  
Старый 18.12.2009, 16:26
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Можно.
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
 Timer1.Interval:=1000;
 Timer1.Enabled := not Timer1.Enabled;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Inc(i);
 if i > 4 then i := 0;
 case i
 of 1: label1.Caption:='1000';
    2: label2.Caption:='1000';
    3: label3.Caption:='1000';
    4: label4.Caption:='1000';
 end;
end;
Т.е. нажатие на кнопку будет включать процесс, а вторичное выключать.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:03.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025