|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Помогите с заставкой
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); procedure FormClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var r,g,b,i,n,t:integer; bool:boolean; begin r:=0; g:=0; b:=0; i:=0; t:=1; repeat begin if r=255 and t=1 then r:=r+1 else; if g=255 and t=1 then g:=g+1 else; if b=255 and t=1 THEN b:=b+1; t:=0 else; if r>=0 and t=0 then r:=r-1 else; if g>=0 and t=0 then g:=g-1 else; if b>=0 and t=0 then b:=b-1 t:=1 else; begin r:=0; g:=0; b:=0; t:=1; end; i:=i+1; if i=Screen.Width then i:=0; canvas.Pen.Color:=rgb(r,g,b); canvas.moveTo(i,0) canvas.LineTo(i,Screen.Height); until true; end; end; end. Смысл программы думаю понятен из кода. Компиятор выдает много ошибок о несовместимости типов и Missing operator or semicolon. Как исправить не подскажете? Многогранная личность(гад,сволочь и паразит одновременно) |
#2
|
||||
|
||||
Цитата:
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private public end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var r,g,b,i,n,t:integer; bool:boolean; begin r:=0; g:=0; b:=0; i:=0; t:=1; repeat begin if (r=255) and (t=1) then r:=r+1; if (g=255) and (t=1) then g:=g+1; if (b=255) and (t=1) then begin b:=b+1; t:=0; end; if (r>=0) and (t=0) then r:=r-1; if (g>=0) and (t=0) then g:=g-1; if (b>=0) and (t=0) then begin b:=b-1; t:=1; end; begin r:=0; g:=0; b:=0; t:=1; end; i:=i+1; if i=Screen.Width then i:=0; Canvas.Pen.Color:=RGB(r,g,b); Canvas.MoveTo(i,0); Canvas.LineTo(i,Screen.Height); end until True; end; end. Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|
#3
|
||||
|
||||
че то я правда намудрил не то)
Программка должна рисовать горизонтальный линии сначала линии рисуются друг под другом,потом друг над другом,каждая линия немного отлтчается цветом от предыдущей.цвет меняется по системе rgb на одну единицу на каждой полосе. Многогранная личность(гад,сволочь и паразит одновременно) |
#4
|
||||
|
||||
Вот держи образец рисования вертикальных линий + смена цвета (я сильно не зацикливался):
Код:
procedure TForm1.FormPaint(Sender: TObject); var Kx,Ky,R,G,B :integer; begin R:=0; G:=0; B:=0; Kx:=0; Ky:=0; Repeat begin Canvas.Pen.Color:=RGB(R,G,B); Canvas.MoveTo(Kx,Ky); Canvas.LineTo(Kx,Form1.ClientWidth); R:=R+1; G:=G+1; B:=B+1; Kx:=Kx+5; end; until (R>255) or (Ky>Form1.ClientWidth); end; Остальную часть проги, я думаю, сделаешь сам. Если чё - пиши !!!! Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
Последний раз редактировалось Yurk@, 30.12.2007 в 19:11. |