|
Основной форум Сюда все проблемы связанные с программированием. |
23.07.2007, 14:01
|
#1
|
AnyKey`щик
Регистрация: 21.07.2007
Сообщений: 10
Написано 0 полезных сообщений (для 0 пользователей)
|
А вот моя ПП на MIDpascal
Эту тему создавал только не в том месте . прога чисто для делать нечего .зарисовывает экран линиями - вначале скорость ставишь ,4 цифры и начать. невпонятках как resetнуть ее с помощью какойньть команды. вот код:
program HelloWorld;
var a , b , c , d , m : integer;
var x , y , x2 , y2 : real;
var go , again : command;
var xx , yy , xx2 , yy2 , s : string;
begin
ShowForm;
a := FormAddTextField('скорость x1', '', 2, TF_NUMERIC);
b := FormAddTextField('скорость y1', '', 2, TF_NUMERIC);
c := FormAddTextField('скорость x2', '', 2, TF_NUMERIC);
d := FormAddTextField('скорость y2', '', 2, TF_NUMERIC);
m := FormAddTextField('кадр/сек', '', 2, TF_NUMERIC);
go := CreateCommand('Go!',CM_OK,1);
AddCommand(go);
repeat until GetClickedCommand = go;
s := FormGetText(m);
xx:= FormGetText(a);
yy:= FormGetText(b);
xx2:= FormGetText(c);
yy2:= FormGetText(d);
ShowCanvas;
x := StringToInteger(xx);
y := StringToInteger(yy);
x2 := StringToInteger(xx2);
y2 := StringToInteger(yy2);
repeat
if x > GetWidth then x := 0 ;
if y > GetHeight then y := 0 ;
if x2 > GetWidth then x2 := 0 ;
if y2 > GetHeight then y2 := 0 ;
if x < 0 then x := GetWidth ;
if y < 0 then y := GetHeight ;
if x2 < 0 then x2 := GetWidth ;
if y2 < 0 then y2 := GetHeight ;
x := x + StringToInteger(xx) ;
y := y + StringToInteger(yy) ;
x2 := x2 + StringToInteger(xx2) ;
y2 := y2 + StringToInteger(yy2) ;
SetColor(Trunc(x),Trunc(y),Trunc((x2 + y2) / 2));
DrawLine(Trunc(x),Trunc(y),Trunc(x2),Trunc(y2));
Repaint;
Delay(1000 / StringToInteger(s));
until GetKeyPressed = KE_KEY0;
end.
|
(Offline)
|
|
23.07.2007, 15:13
|
#2
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: А вот моя ПП на MIDpascal
Примерно так:
program HelloWorld;
var a , b , c , d , m : integer;
var x , y , x2 , y2 : real;
var go , again : command;
var xx , yy , xx2 , yy2 , s : string;
begin
showform;
a := FormAddTextField('скорость x1', '', 2, TF_NUMERIC);
b := FormAddTextField('скорость y1', '', 2, TF_NUMERIC);
c := FormAddTextField('скорость x2', '', 2, TF_NUMERIC);
d := FormAddTextField('скорость y2', '', 2, TF_NUMERIC);
m := FormAddTextField('кадр/сек', '', 2, TF_NUMERIC);
go := CreateCommand('Go!',CM_OK,1);
repeat
ShowForm;
AddCommand(go);
repeat until GetClickedCommand = go;
s := FormGetText(m);
xx:= FormGetText(a);
yy:= FormGetText(b);
xx2:= FormGetText(c);
yy2:= FormGetText(d);
ShowCanvas;
setcolor(255,255,255);
Fillrect(0,0,getwidth,getheight);
setcolor(0,0,0);
x := StringToInteger(xx);
y := StringToInteger(yy);
x2 := StringToInteger(xx2);
y2 := StringToInteger(yy2);
repeat
if x > GetWidth then x := 0 ;
if y > GetHeight then y := 0 ;
if x2 > GetWidth then x2 := 0 ;
if y2 > GetHeight then y2 := 0 ;
if x < 0 then x := GetWidth ;
if y < 0 then y := GetHeight ;
if x2 < 0 then x2 := GetWidth ;
if y2 < 0 then y2 := GetHeight ;
x := x + StringToInteger(xx) ;
y := y + StringToInteger(yy) ;
x2 := x2 + StringToInteger(xx2) ;
y2 := y2 + StringToInteger(yy2) ;
SetColor(Trunc(x),Trunc(y),Trunc((x2 + y2) / 2));
DrawLine(Trunc(x),Trunc(y),Trunc(x2),Trunc(y2));
Repaint;
Delay(1000 / StringToInteger(s));
until GetKeyclicked = KE_KEY2;
until getkeyclicked=ke_key1
end.
|
(Offline)
|
|
23.07.2007, 15:36
|
#3
|
AnyKey`щик
Регистрация: 21.07.2007
Сообщений: 10
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: А вот моя ПП на MIDpascal
интересно :большой suнckс
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 06:20.
|