Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C: wxWidget läpinäkyvä taustakuva

kayttaja-3842 [15.10.2010 17:26:09]

#

Terve kaikki...

Elikkäs olen tässä koittanut kyhäillä custom windowta wxWidgetillä. Eli ideani olisi saada vaihtettua wxWindowin taustaväri läpinäkyväksi. Tämän jälkeen olisi tarkoitus piirtää osittain läpinäkyvä png kuva ikkunaan ja tadaa meillä olisi läpinäkyvä ikkuna.

Ongelmani on vaan, että sen onnistu toteuttaa kyseistä ikkunaa. wxWidgetin wxWindow sisältää kyllä SetTransparent funktion, mutta tämä funktio muuttaa samalla koko ikkunan sisällön läpinäkyväksi. Eli esim jos laitan SetTransparent( 0 ) niin itse piirrettyä png kuvaakaan ei näy enää. Eli takroitus olisi saada vain ja ainoastaan itse wxWindow tausta läpinäkyväksi.

...toivottavasti ymmärsitte mitä ajoin takaa.

-. Kiitos

kayttaja-3842 [18.10.2010 16:36:41]

#

...no tietääkö kukaan edes miten tämä onnistuisi WinAPI:lla?

Metabolix [18.10.2010 16:59:49]

#

Pikselikohtainen täysi läpinäkyvyys onnistuu, tästä puhuttiin jo aiemmin, kaivoin jopa lupaavia linkkejä. Jos WinAPI kiinnostaa, etsi Googlella MSDN:stä "Layered Windows".

Käsitykseni on, että pikselikohtainen osoittainen läpinäkyvyys ei onnistu edes WinAPI:lla tai on jotenkin kohtuuttoman vaikea toteuttaa. Käsitys voi olla jo vanhentunut, mutta en rupea nyt kaivamaan MSDN:stä uudempaa tietoa.

kayttaja-3842 [18.10.2010 17:29:15]

#

Siis idea onkin, että sais ikkunan itsessään täysinläpinäkyväksi ja tuon osittain läpinäkyvyyden luokin itse png kuva johon on itsessään asetettu tuo läpinäkyvyys.

Edit1:

Itse olen saanut tehtyä wxWidgetillä jonkunlaisen. Ongelma on vain, että sen saa päivitettyä taustaa, jotta läpinäkyvyys toimisi.

http://i52.tinypic.com/29kqtr6.jpg

Elikkä jos ikkunan "takana" grafiikka vaihtuu, niin itse ohjelman tausta ei päivity.

http://i54.tinypic.com/14lr21u.png

Metabolix [18.10.2010 17:34:03]

#

Ei taida onnistua. Joudut laskemaan kuvasta erikseen ikkunan läpinäkyvyysmaskin.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta