TScrollBar/fi
Deutsch · English · Français · Suomi · 日本語
TScrollBar
on komponentti, jonka avulla käyttäjä voi vierittää siihen liittyvän komponentin/olion sisältöä siirtämällä liukusäädintä.
Käyttö
TScrollBar voidaan ottaa käyttöön lomakkeella, valitsemalla se komponenttipaletin Standard-välilehdeltä ja klikkaamalla se lomakkeelle.
Pieni esimerkki
Siirrä kuvaa lomakkeella vierityspalkin sijainnin mukaan
- Sijoita kaksi TScrollBars lomakkeelle
- Komponenttimuokkaimessa muuta ensimmäisen vierityspalkin (scrollbar) ominaisuudet: "Name" arvoon "sbVert", "Kind" arvoon "sbVertical" ja "Align" arvoon "alRight"
- Komponenttimuokkaimessa muuta toisen vierityspalkin ominaisuudet: "Name" arvoon "sbHori" ja "Align" arvoon "alBottom"
- Lisää TPaintBox (löytyy komponenttipaletin Additional -välilehdeltä) lomakkeelle ja aseta sen ominaisuus "Align" arvoon "alClient"
- Lisää TImageList (löytyy komponenttipaletin Common Controls -välilehdeltä) lomakkeelle.
- Lataa kuvia ImageList:iin:
- Klikkaa ImageList1 kuvaketta hiiren kakkospainikkeella ja valitse Kuvaluettelon muokkain ponnahdusvalikosta
- Klikkaa Lisää... ja valitse kuva (mieluiten pieni kuvake, esimerkiksi 16 x 16, Lazarus/images/icons/lazarus16x16)
- Lopeta valintasi painamalla OK
- Valitse PaintBox lomakkeella, mene komponenttimuokkaimen tapahtumiin, luo tapahtumankäsittelijä tapahtumalle OnPaint ja täydennä se seuraavanlaiseksi:
procedure TForm1.PaintBox1Paint(Sender: TObject);
begin
ImageList1.Draw(
Paintbox1.Canvas,
sbHori.Position * (PaintBox1.ClientWidth - ImageList1.Width) div sbHori.Max,
sbVert.Position * (Paintbox1.ClientHeight - ImageList1.Height) div sbVert.Max,
0);
end;- Nyt muutetaan vierityspalkin sijainteja lomakkeella käyttämällä sen RePaint-metodia: Luodaan vierityspalkille tapahtumakäsittelijä OnChange ja kutsu tätä myös toisesta vierityspalkista:
procedure TForm1.sbVertChange(Sender: TObject);
begin
RePaint;
end;Tämä pieni ohjelma voisi näyttää tämänkaltaiselta:

Katso myös
From the Free Pascal wiki, page "TScrollBar/fi", as it stood on 2020-03-01 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.