Dialogboksen boksen målinger

Hver dialogboksen boksen malen inneholder målinger angir posisjonen, bredden og høyden på dialogboksen og kontroller som den inneholder. Disse målene er enhetsuavhengige, slik at et program kan bruke en enkelt mal til å opprette den samme dialogboksen for alle typer utfoldelse anordninger. Dette sikrer at en dialogboks vil ha samme proporsjoner og utseendet på alle skjermene til tross for ulike oppløsninger og sideforhold mellom skjermbildene.

Målene i en dialog boks mal er gitt i dialogboksen mal enheter. Konvertere målinger fra dialogboksen mal enheter til skjermen enheter (piksler), kan du bruke funksjonen MapDialogRect , som tar hensyn til skriften som brukes av dialogboksen og riktig konverterer et rektangel fra dialogboksen mal enheter til piksler. For dialogbokser som bruker systemskrift, du kan bruke GetDialogBaseUnits -funksjonen til å utføre beregningene konvertering, selv om du bruker MapDialogRect er enklere.

Malen må angi innledende koordinatene for øverst til venstre i dialogboksen. Vanligvis er koordinatene relative til øverste venstre hjørne av eiervinduet klientområdet. Når malen angir stilen DS_ABSALIGN eller dialogboksen har ingen eier, er plasseringen relativ til øvre venstre hjørne av skjermen. Systemet angir denne utgangsposisjon ved opprettelse av dialogboksen, men tillater et program å justere plasseringen før vise dialogboksen. For eksempel kan et program hente dimensjonene i eier-vinduet, beregne en ny plassering som sentrerer i dialogboksen i eiervinduet, og angi deretter plasseringen ved hjelp av funksjonen SetWindowPos.

Malen bør angi en dialog-Boksbredde og høyde som ikke overskrider bredden og høyden på skjermen, og sikrer at alle kontroller er innenfor klientområdet i dialogboksen. Selv om systemet tillater at en dialogboks skal alle størrelser, kan oppretter en som er for liten eller for stor forhindre brukeren fra å gi inndata, bekjempe formålet med dialogboksen. Mange programmer bruker mer enn én dialogboks når det finnes et stort antall kontroller. I slike tilfeller inneholder den første dialogboksen vanligvis én eller flere knapper som brukeren kan velge å vise dialogboksen neste.

Index