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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 14.12.2009, 09:10
kinderpingui20 kinderpingui20 вне форума
Прохожий
 
Регистрация: 14.12.2009
Сообщения: 11
Репутация: 10
По умолчанию Как сделать интервал времени?

Кому не сложно помогите:
вот листинг:
Код:
unit Unit21;

interface

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

type
  TForm21 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure FormClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure FormMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure FormPaint(Sender: TObject);





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

var
  Form21: TForm21;

implementation

{$R *.dfm}
const
  s = 'ДОБРО ПОЖАЛОВАТЬ В НАШЕ ТАКСИ';
  ColDark = clGray;
  ColNorm = clSilver;
  ColLight = clWhite;
  XPos = 10;
  YPos = 10;
  dx = 1;
  dy = 1;


procedure TForm21.FormClick(Sender: TObject);
begin
form21.Close;
end;

procedure TForm21.FormKeyPress(Sender: TObject; var Key: Char);
begin

label1.visible:=true;
label2.visible:=true;
label3.visible:=true;
label4.visible:=true;
label5.visible:=true;
label6.visible:=true;
label7.visible:=true;

end;


procedure TForm21.FormCreate(Sender: TObject);
begin
Form21.Canvas.Brush.Style := bsClear;
  with Form21.Canvas.Font do
  begin
    name := 'Arial';
    Size := 20;
    Style := [fsBold];
end;
end;

procedure TForm21.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 with Form21.Canvas do
  begin
    Font.Color := ColDark;
    TextOut(XPos - dx, YPos - dy, s);
    Font.Color := ColLight;
    TextOut(XPos + dx, YPos + dy, s);
    Font.Color := ColNorm;
    TextOut(XPos, YPos, s);
  end;
end;

procedure TForm21.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 with Form21.Canvas do
  begin
    Font.Color := ColLight;
    TextOut(XPos - dx, YPos - dy, s);
    Font.Color := ColDark;
    TextOut(XPos + dx, YPos + dy, s);
    Font.Color := ColNorm;
    TextOut(XPos, YPos, s);
  end;
end;

procedure TForm21.FormPaint(Sender: TObject);
begin
 Form21.MouseUp(mbLeft, [], 0, 0);
end;

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

Задача поставлена следующая сделать шашку такси.и чтобы квадратики с интервалом времени появлялись или вылетали.
На 1 надпись не обращайте особого внимания(это я сделал просто для красоты).
далее я тупо указал значения всех label как false, а в программном коде как true. при нажитии кнопки Enter у меня все шашку всю показывает.
и не удивительно - интервал(период)времени не указан.
кто если знает помогите

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

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

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

Хоть и изврат, но можно.
Примерно так:
Код:
procedure TForm1.FormActivate(Sender: TObject);
Var
  t: LongInt;
begin
t := GetTickCount;
repeat
 if GetTickCount-t >= 100
 then begin
        //Здесь помещаете ваш модуль для отрисовки
        Form1.Left := Form1.Left + 1;
        if Form1.Left+Form1.Width > Screen.Width
        then Form1.Left := 0;
        t := GetTickCount;
        end;
 Application.ProcessMessages;
until false;
end;

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

Cпс прикольная вещь=)
только по задании мне надо чтобы шашки(label) появлялись по очереди с интервалом ну допустим в 2секунды.
накачал всяких программ -подобных найти не могу=(
Ответить с цитированием
  #6  
Старый 14.12.2009, 12:39
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Я же для примера окно бегать заставляю. Свой модуль отрисовки шашек туда вставьте и интервал не 100, а 2000 = 2сек поставьте.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

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