GetDialogBaseUnits

Funksjonen GetDialogBaseUnits returnerer systemets dialogboksen lagerenheter, som er gjennomsnittlig bredden og høyden av tegn i systemskriften. For dialogbokser som bruker systemskrift, kan du bruke disse verdiene til å konvertere mellom dialogboksen mal enheter, som angitt i dialogboksen boksen maler og piksler. For dialogbokser som ikke bruker systemskrift, avhenger konvertering fra dialogboksen mal enheter til bildepunkter av fonten som brukes av dialogboksen.

For begge typer i dialogboksen er det enklere å bruke MapDialogRect -funksjonen til å utføre konverteringen. MapDialogRect tar hensyn til skriften og riktig konverterer et rektangel fra dialogboksen mal enheter til piksler.

LANG GetDialogBaseUnits(VOID) 

Parametere

Denne funksjonen har ingen parametere.

Returverdier

Returverdien er en 32-biters verdi som inneholder grunnenheter for dialogboksen. Signifikante ordet av returverdien inneholder vannrette dialogboksen boksen lagerenheten og signifikante ordet inneholder loddrett dialogboksen boksen lagerenheten.

Merknader

Vannrette lagerenheten som er returnert av GetDialogBaseUnits er lik gjennomsnittlig bredden, i piksler, på tegnene i systemskriften; loddrett lagerenheten er lik høyden, i piksler, på skriften.

For en dialogboks som ikke bruker systemskriften, er grunnenhetene gjennomsnittlig bredden og høyden, i piksler, på tegnene i den dialogboksen Skrift. Du kan bruke den GetTextMetrics og GetTextExtentPoint32 -funksjoner til å beregne disse verdiene for en valgt skrifttype. Ved hjelp av MapDialogRect -funksjonen, kan du imidlertid unngå feil som kan følge hvis beregningene er forskjellige fra de som utført av systemet.

Hver vannrette lagerenheten er lik 4 vannrette dialogboksen mal enheter; hver loddrett lagerenheten er lik 8 loddrett dialogboksen mal-enheter. Derfor vil konvertere dialogboksen mal enheter til piksler, bruk følgende formler:

pixelX = (templateunitX * baseunitX) / 4 pixelY = (templateunitY * baseunitY) / 8 

 

På samme måte vil konvertere fra piksler til dialogboksen mal enheter, bruk følgende formler:

templateunitX = (pixelX * 4) / baseunitX templateunitY = (pixelY * 8) / baseunitY 

 

Multiplikasjon er utført før divisjon å unngå avrunding problemer hvis grunnenheter, ikke er delelig med 4 eller 8.

Windows CE: Windows CE støtter ikke utvidet feilverdier for denne funksjonen.

Hurtiginformasjon

nbsp; Windows &NT: krever versjon 3.1 eller senere.
Windows:Krever Windows 95 eller senere.
Windows CE:Krever versjon 1.0 eller senere.
Topptekst:Deklarert i winuser.h.
Importere biblioteket:Bruk user32.lib.

Se også

Oversikt over dialogboksen-boksene, dialogboksen fungerer, MapDialogRect

Index