Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: VB5: kuvan koko pikseleissä

Marcus [02.10.2006 14:29:50]

#

Tervehdys kaikille!

Alla kuvattu kysymys koskettaa Visual Basic 5 -ohjelmointia.

Jos teen seuraavasti: Lataan kuvan Pic tai stdPic -tyyppiin
ja laitan kuvan PictureBox-komponenttiin, niin miten saan
kuvan dimensiot, leveyden ja korkeuden, pikseleissä?

Olen asettanut PictureBox-komponentin skaalauksen vbPixels-tilaan, mutta tämä ei riitä.

Tarvittaessa myös laskukaava twip-yksiköistä pikseleiksi
käy; twippeinä leveyden ja korkeuden saa suoraan
.width:llä ja .height:llä.

--
Markus

Blaze [02.10.2006 14:44:47]

#

Aseta skaalaus pikseleiksi, niin pikselimitta löytyy ScaleWidth ja ScaleHeight -ominaisuuksista.

kayttaja-4976 [02.10.2006 15:47:07]

#

AutoSize pitää olla päällä, muuten ei toimi.

Marcus [02.10.2006 18:20:22]

#

Kiitoksia, tässä ratkaisussa on tosin se huono puoli, että PictureBox-komponentti skaalautuu kuvan koon mukaan, haluaisin pitää komponentin koko ajan samankokoisena.

Metabolix [02.10.2006 18:32:13]

#

Kokeilepa kertoimia Screen.TwipsPerPixelX ja Screen.TwipsPerPixelY.

Antti Laaksonen [02.10.2006 18:35:26]

#

Tässä on yksi ratkaisu:

Dim leveys As Integer, korkeus As Integer
Picture1.Picture = LoadPicture("c:\antti\testi.jpg")
leveys = Picture1.ScaleX(Picture1.Picture.Width, vbHimetric, vbPixels)
korkeus = Picture1.ScaleY(Picture1.Picture.Height, vbHimetric, vbPixels)
MsgBox leveys & "x" & korkeus

Toivottavasti tässä ei ole mitään, mikä toimii vasta VB6:ssa.

Marcus [02.10.2006 19:45:00]

#

Kiitoksia todella paljon, sain toimimaan!
Antin ratkaisu toimii myös VB5:ssä suoraan.

Valvoin aikoinaan yhden yön sovellukseni parissa kun yritin
saada ladatun kuvan leveyden ja korkeuden pikseleissä. :-)

Vastaus

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

Tietoa sivustosta