Difference between revisions of "TScrollBar/fi"
From Free Pascal wiki
Jump to navigationJump to search (Created page with "{{TScrollBar}} '''TScrollBar''' image:tscrollbar.png on komponentti, jonka avulla käyttäjä voi vierittää siihen liittyvän komponentin/olion sisältöä siirtämäl...") |
m (Fixed syntax highlighting) |
||
Line 4: | Line 4: | ||
==Käyttö== | ==Käyttö== | ||
+ | |||
TScrollBar voidaan ottaa käyttöön [[TForm|lomakkeella]], valitsemalla se [[Component Palette/fi|komponenttipaletin]] [[Standard tab/fi|Standard]]-välilehdeltä ja klikkaamalla se lomakkeelle. | TScrollBar voidaan ottaa käyttöön [[TForm|lomakkeella]], valitsemalla se [[Component Palette/fi|komponenttipaletin]] [[Standard tab/fi|Standard]]-välilehdeltä ja klikkaamalla se lomakkeelle. | ||
==Pieni esimerkki== | ==Pieni esimerkki== | ||
+ | |||
Siirrä kuvaa lomakkeella vierityspalkin sijainnin mukaan | Siirrä kuvaa lomakkeella vierityspalkin sijainnin mukaan | ||
Line 19: | Line 21: | ||
** Lopeta valintasi painamalla ''OK'' | ** Lopeta valintasi painamalla ''OK'' | ||
* Valitse PaintBox lomakkeella, mene komponenttimuokkaimen tapahtumiin, luo tapahtumankäsittelijä tapahtumalle ''OnPaint'' ja täydennä se seuraavanlaiseksi: | * Valitse PaintBox lomakkeella, mene komponenttimuokkaimen tapahtumiin, luo tapahtumankäsittelijä tapahtumalle ''OnPaint'' ja täydennä se seuraavanlaiseksi: | ||
− | < | + | |
+ | <syntaxhighlight lang=pascal> | ||
procedure TForm1.PaintBox1Paint(Sender: TObject); | procedure TForm1.PaintBox1Paint(Sender: TObject); | ||
begin | begin | ||
Line 28: | Line 31: | ||
0); | 0); | ||
end; | end; | ||
− | </ | + | </syntaxhighlight> |
+ | |||
* 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: | * 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: | ||
− | < | + | |
+ | <syntaxhighlight lang=pascal> | ||
procedure TForm1.sbVertChange(Sender: TObject); | procedure TForm1.sbVertChange(Sender: TObject); | ||
begin | begin | ||
RePaint; | RePaint; | ||
end; | end; | ||
− | </ | + | </syntaxhighlight> |
+ | |||
Tämä pieni ohjelma voisi näyttää tämänkaltaiselta: | Tämä pieni ohjelma voisi näyttää tämänkaltaiselta: | ||
Line 41: | Line 47: | ||
==Katso myös== | ==Katso myös== | ||
+ | |||
* [[doc:lcl/stdctrls/tscrollbar.html|TScrollBar doc]] | * [[doc:lcl/stdctrls/tscrollbar.html|TScrollBar doc]] | ||
* [[TTrackBar]] | * [[TTrackBar]] |
Latest revision as of 01:17, 2 March 2020
│
Deutsch (de) │
English (en) │
suomi (fi) │
français (fr) │
日本語 (ja) │
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