Szukam komponentu..

0

Poszukuję komponentu do płynnego przejścia między obrazkami (np poprzez zanikanie jednego i pojawianie się drugiego). Z góry dziękuje :)

0

Możesz takie cacko znaleźć na Torry.net [krzyk]
Tam jest wszystkiego pełno...
A nazwa to HarmFade :-)

0

cześć :)
tak <ort>zerknołem </ort>z ciekawości tutaj i dobrze:))
<ort>Ściągnołem </ort>ten komponent by go "obsłuchać" i dać diagnozę :))
Jest dobry !
Obrazki "przenikają" się w tempie podanym przez użytkownika...
ale nie mogę doszukać się opcji by to "przenikanie" staneło w pewnym
miejscu czego efektem byłoby widok jednego i drugiego obrazka
po 50% widoczności - jak to można uzyskać w programach graficznych
z wykorzystaniem warstw
Byłoby dobrze jakby można bylo ustalić stopień "przeniknięcia" od 0-255
Może takie coś jest ?
Proszę o podpowiedź beemx - a może ktoś inny to wie ??

0

Jest sporo komponentów do tego przeznaczonych poszukaj na tych stronach które Ci dałem a jak nic nie znajdzizesz to nasz największy przyjaciel = <url>www.google.pl</url>

0

Witaj...
Chodzi Ci o fade pomiędzy dwoma zdjęciami (transparent)... Istnieje oczywiście taki komponent, który może to wykonać. Jego nazwa to TPicShow (wersja 2.3). Dodam jeszcze, że styl o numerze 118 odpowiedzialny jest za efekt fade. Poza tym dołączone jest do niego demo, podobnie jak do THarmFade, także można się szybko zaznajomić ze wszystkimi opcjami (a w przypadku TPicShow jest ich wiele).
Jak zawsze google.com d best friend @~~
[cya]

0

Dziękuje Wam ślicznie <full z dębowej beczki> :))

0

Inter nie wiem czy szukales tego samego?
Ja szukam sposobu na polprzezroczystosc w Delphi. Czy ktos z was moglby mi pomoc.

0

Półprzeźroczystość CZEGO? Formy, obrazka, komponentu??

Jak obrazka, to bym najchętniej odesłał do scanline'a, bo wtedy możesz zrobić wszystko, co ci się zażyczy, w tym i alpha blending.

0

Sorry.
Myślałem żeby zrobić półprzezroczystego Shape'a, ale chętnie przeczytałbym poradę o formy albo obrazka. Półprzezroczystego Shape'a ale nie z formą tylko z "pulpitem". Czyli nie że będzie pół Shape, pół Forma tylko pół Shape, pół pulpit i inne okna (które są pod nim).
Czy da się to zrobić bez rzadnego dodatkowedo komponentu. Jeśli nie to jaki (i jak) uŻyć? Skad go mozna pobrać?
Z góry dzięki :) .

0

Fazzer - Zmieniasz TransparentColor formy na true i TransparentColorValue na clNone i boarderstyle na bsnone (żeby belka nie wystawała) i alphablendem ustawiasz przezroczystość shape'a (formy nie widać)

0

Hib dzięki za radę. Wszystko co piszesz o ukrywaniu formy to znam. A z przezroczystością to nadal nie rozumiem. Shape nie ma parametru alpha ani alphablend (z tego co wiem). Czy tak się nazywa "komponent przezroczyskości"? Czy może chodzi Ci o inny komponent shape?

0

Właściwości AlphaBlend i Alpha ma forma, dzięki nim możesz łatwo sprawić, że całe okno będzie półprzeźroczyste. Delphi 5 na pewno jeszcze takich możliwości nie ma, Delphi 7 prawie na pewno ma.

Z TShape (moim przynajmniej zdaniem) sprawa jest bardziej męcząca. Na tyle męcząca, że dałbym sobie spokój i wszystkie efekty Blendingowe wykonywał na Canvasach i bitmapach. Załóżmy, że masz obrazki Image1 i Image2. Jak chcesz narysować jeden na drugim to robisz coś takiego:

Blend(Image1->Picture->Bitmap, Image2->Picture->Bitmap,0,0,128);

Gdzie funkcja Blend wygląda tak:

void Blend(Graphics::TBitmap* dst, Graphics::TBitmap *src, int X, int Y, int opacity) {
    // ustawienie obydwu bitmap na tryb RGB
    if(dst->PixelFormat!=pf24bit) dst->PixelFormat=pf24bit;
    if(src->PixelFormat!=pf24bit) src->PixelFormat=pf24bit;

    // ustalenie granic rysowania
    TRect bound;

    bound.left = (X<0)? -X : 0;
    if(X+src->Width <= dst->Width) bound.right = src->Width;
    else bound.right = dst->Width - X;
    bound.top = (Y<0)? -Y : 0;
    if(Y+src->Height <= dst->Height) bound.Bottom = src->Height;
    else bound.Bottom = dst->Height-Y;

    // jeden piksel zajmuje 3 bajty (R,G,B), więc szerokość ScanLine'ów będzie 3 razy dłuższa niż obraz
    X*=3;
    bound.left*=3;
    bound.right*=3;


    // i zasuwamy po wszystkich liniach obrazu...
    for(int y=bound.top; y < bound.bottom; y++) {
        // pobieramy odpowiednie linie tla i pierwszego planu
        byte *sline = (byte*)src->ScanLine[y];
        byte *dline = (byte*)dst->ScanLine[y+Y];
        // mieszamy wartosci RGB
        for(int x=bound.left; x < bound.right; x++)
            dline[x+X]= ((255-opacity)*dline[x+X] + opacity*sline[x]) / 255;
        }
    }

Niech ktoś to na Delphi przetłumaczy, bo ja dalej nie mam tego licha zainstalowanego... ;/

0

Fazzer chodziło mi o alphablenda formy
Tu masz screena jak to wygląda http://ximg.eu/uploads/8043a46eb9.png

0

Ok dzięki ale mnie chodziło żeby tylko ten Shape był przeztoczystya nie cała forma. Nie chciałem twożyć osobnej formy tylko po to że by zrobić tam półprzezroczystego Shape. Widzę jednak że chyba tak to będę musiał zrobić. Jeżeli to tyle zachodu (rada Ranides'a).

0

Fazzer znalazłem też komponent, NIE MA alphablendingu, ale można ustawić 50% lub 25% prześwitu
klik

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