mam kodzik na animację która wyświetla napis litera po literze:
var
DText : String;
Done : Boolean;
=====================
private
procedure DrawAnim(X, Y : Integer);
procedure SteepBySteep(X, Y : Integer);
======================
procedure TMainForm.SteepBySteep(X, Y: Integer);
var
TextLength, I: Integer;
begin
Done := TRUE;
TextLength := Length(DText);
with Canvas do
begin
for I := 1 to TextLength do
begin
Application.ProcessMessages;
Sleep(100);
Brush.Style := bsClear;
Font.Name := 'Courier New';
Font.Color := clWhite;
Font.Size := 16;
TextOut((X + i * 16), Y, DText[i]);
Brush.Style := bsClear;
Font.Color := clBlack;
TextOut((X + i * 16) -2, Y -2, DText[i]);
end;
end;
end;
ale niestety to pojawi się jeden raz i koniec, a jak zrobić żeby jeśli tekst zostanie wyświetlony do końca to wszystko idzie od nowa.
P.S
Kod ten pochodzi z kursu. Więc nie myślcie, że jestem taki genialny :-D :-D i wszystko sam wymysliłem (bo w życiu bym na to ni wpadł, dla mnie Canvas i cała grafika to czarna magia) .
[dopisane]
moderatorzy tryją, żeby pisać wszystkie pytania w jednym poście. Tylko, że jeśli mi ktoś odpoisze, że nikomu się nie chce tego czytać to zawsze każe pytanie bedę zadawał w osobnym poście.
A więc.
mam zmienną integer (wartość 100);
i chcę zrobić tak, że jeśli będzie mniejsza lub równa zero to button się wyłaczy. Więc w OnCreate mam:
if zmienna