![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Кому не сложно помогите:
вот листинг: Код:
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.Задача поставлена следующая сделать шашку такси.и чтобы квадратики с интервалом времени появлялись или вылетали. На 1 надпись не обращайте особого внимания(это я сделал просто для красоты). далее я тупо указал значения всех label как false, а в программном коде как true. при нажитии кнопки Enter у меня все шашку всю показывает. и не удивительно - интервал(период)времени не указан. кто если знает помогите Последний раз редактировалось Admin, 14.12.2009 в 10:15. |
|
#2
|
||||
|
||||
|
Так добавьте TTimer, выставите в нем необходимый интервал и обрабатывайте в событии ваши шашки.
|
|
#3
|
|||
|
|||
|
А без Timer сделать можно как нибудь?
преподаватель зараза не разрешает им пользоваться=( |
|
#4
|
||||
|
||||
|
Хоть и изврат, но можно.
Примерно так: Код:
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
|
|||
|
|||
|
Cпс прикольная вещь=)
только по задании мне надо чтобы шашки(label) появлялись по очереди с интервалом ну допустим в 2секунды. накачал всяких программ -подобных найти не могу=( |
|
#6
|
||||
|
||||
|
Я же для примера окно бегать заставляю. Свой модуль отрисовки шашек туда вставьте и интервал не 100, а 2000 = 2сек поставьте.
|