ScrollBar i zoom

0

Chciałbym za pomocą ScrollBara powiększać obraz bez powiększania Image, i do tyłu pomniejszać. W FAQ trochę o scrollbarach jest, ale o tym temacie nic nie znalazłem. Może jakiś artykuł?

0

w delphi 3 na pewno byl komponent, pozniej juz go nie sopotkalem, poszukaj na http://www.torry.net artykulow i komponentow

0

Myslę, że tak samo dobrym rozwiązaniem byłoby położenie TImage na
TScrollBoxie, a potem to już możesz tym ScrollBarem zwiększać i
zmniejszać cały obrazek z właściwością stretch ustawioną na true. Jeśli
obrazek będzie większy od scrollboxa, to sobie możesz strzałkami przewijać.

0

ehh... a teraz włącz myślenie i czytaj :

  1. Masz Image
  2. Masz Scroll'a
  3. Co chcesz zrobić ?!
    • rysować na imagu obrazek którego wielkość jest proporcjonalna do stopnia wysunięcia suwaka scroll'a.
  4.   ---  u w a g a   w ł ą c z a m y  my ś l e n i e  ----
    
  5. W onChange scrolla zapewne trzeba wstawić jakiś kod..
  6. Tylko jaki ?!
    • Taki który bedzie rysował.
    • może canvas.draw(x,y,obrazek); ??
    • nie...
    • dlaczego ?
    • bo ten obrazek za zmieniać swoje wymiary..
    • to może użyj canvas.StrechDraw(rect,obrazek) ??
    • o to brzmi nieźle.. tylko co to jest rect ?!
    • rect określa wymiary twojego obrazka.. inaczej mówiąc definiuje prostokąt (rectangle)
    • dzięki.. bardzo mi pomogłeś..
    • nie ma sprawy.

<font size="9">// lekarze stwierdzili u mnie schizofrenie..... a wcale że nie !, a tak.. nie, tak !..</span>

0

Wszystkim kolegom dziękuję, a w szczególności: koledze o nicku AndRew [cya]

0

Andrew, mi to nie wychodzi....
mam takie cos
image1.Canvas.StretchDraw(rect(0,0,image1.Width,image1.Height),image1.Canvas.Brush.Bitmap);
albo
image1.Canvas.StretchDraw(rect(0,0,image1.Width,image1.Height),image1.picture.graphic);

czy mozesz mi napisac poprawny kod albo jakis przyklad??

0

powiększać obraz bez powiększania Image
...
to zajmij sie fraktalami :-)

0

var obrazek : TBitmap;

[CIACH!]
obrazek := TBitmap.Create;
obrazek.LoadFromFile('c:\jakiśTamPlikBitmapowy.bmp');
image1.Canvas.StretchDraw(rect(0,0,30,10000),obrazek);
[/ciach]

:)

1 użytkowników online, w tym zalogowanych: 0, gości: 1