Delphi – Skrolovanje teksta u naslovnoj liniji

Ovaj prilog ฤ‡e vam prikazati vrlo jednostavan i moฤ‡an „trik“, kako da neka vaลกa poruka (recimo reklamnog tipa) scroll (skroluje-klizi) po naslovnoj liniji prozora aplikacije. Ovo skrolovanje je vrlo sliฤno tekstu koji skroluje u Taskbar liniji ili recimo kao u WinAmp prozoru, kada naslov pesme koja se reprodukuje skroluje.

Ono ลกto ฤ‡emo prvo odrediti su dve globalne varijable:


var
ScrollPozicija: integer = 0;
ScrollTekst : string = ‘Ovo je tekst koji skroluje…’;

Prva varijabla (ScrollPozicija) je tipa integer i ona ฤ‡e sadrลพati vrednost trenutne pozicije skrolujuฤ‡eg teksta, a druga (ScrollTekst) predstavlja tekst koji ฤ‡e da „klizi“ po naslovnoj liniji. Startovaฤ‡emo skrolovanje teksta sa istim brojem karaktera (praznih mesta), koliko ลพelimo da se odjednom prikaลพe odreฤ‘eni tekst. Potom skrolovanje poฤinje sa desne strane i ide ka levoj. Sledeฤ‡a procedura koristi komponentu „Timer“ da bi se izvrลกilo pomeranje teksta udesno. Zato smo iskoristili dogaฤ‘aj komponente „OnTimer“:

procedure TForm1.Timer1Timer(Sender: TObject);
const
// Prostor koji odvajamo za prikaz teksta
SCROLL_PROSTOR = 10;
begin
// Deo teksta koji se prikazuje
Form1.Caption := Copy(ScrollTekst, ScrollPozicija, SCROLL_PROSTOR);

// Poveฤ‡anje skrol pozicije za jedan karakter
Inc(ScrollPozicija);

// Vrลกimo resetovanje pozicije kada
// skrolujuฤ‡i tekst doฤ‘e do kraja
if ScrollPozicija >= Length(ScrollTekst) then
ScrollPozicija := 0;
end;


Sam programski kod govori o ฤemu se radi, zajedno sa ubaฤenim komentarima. Konstanta „SCROLL_PROSTOR“ odreฤ‘uje koliko ฤ‡e karaktera od ukupnog teksta biti prikazano odjednom. Isti ovaj kod moลพete koristiti i za druge komponente, recimo „TEdit“. Jednostavno zamenite Form1.Caption sa TEdit.Text. Zanimljivo je da, ako u ovaj kod ubacite „Application.Title“, tekst ฤ‡e skrolovati u ikoni-dugmetu na samom Taskbar-u.

Pratite Krstaricu na www.krstarica.com