GetDialogBaseUnits

Funkcja GetDialogBaseUnits zwraca okno dialogowe systemu podstawowych jednostek, które są średnia szerokość i wysokość znaków czcionki systemu. Dla okien dialogowych, które używają czcionki systemowej można użyć tych wartości do konwersji między jednostkami szablonu okno dialogowe, jak określono w oknie dialogowym pole szablonach i pikseli. Dla okien dialogowych, które nie korzystają z czcionki systemowej konwersja z okna dialogowego szablonu jednostek do pikseli zależy od czcionki używanej przez okno dialogowe.

Dla obu rodzajów okno dialogowe jest łatwiejszy w użyciu funkcji MapDialogRect wykonać konwersję. MapDialogRect uwzględnia czcionki i poprawnie konwertuje prostokąta z okna dialogowego szablonu jednostek pikseli.

DŁUGI GetDialogBaseUnits(VOID) 

Parametry

Funkcja ta ma bez parametrów.

Zwraca wartości

Wartość zwracana jest wartość 32-bitowe, która zawiera jednostki bazowej okna dialogowego. Słowo bity wartość zwracany zawiera jednostkę bazową, pole dialogowe poziome, a słowo wysokich numerach zawiera jednostkę bazową, pole dialogowe pionowe.

Uwagi

Jednostka bazowa poziome zwrócony przez GetDialogBaseUnits jest równa średniej szerokości, w pikselach, znaków czcionki systemu; pionowe jednostka bazowa jest równa wysokość w pikselach, czcionki.

Okno dialogowe, które nie są używane czcionki systemowej podstawowych jednostek są średnia szerokość i wysokość w pikselach, znaków w oknie dialogowym Czcionka. Można użyć GetTextMetrics i GetTextExtentPoint32 funkcji obliczania tych wartości dla zaznaczonej czcionki. Jednakże używając funkcji MapDialogRect , możesz uniknąć błędów, które może spowodować jeżeli obliczeń różnią się od tych, które są wykonywane przez system.

Każdej poziomej jednostka bazowa jest równa 4 poziomy okno Szablon jednostek; każdej pionowej jednostka bazowa jest równy 8 jednostek szablonu pionowe okna dialogowego. W związku z tym aby przekonwertować okno Szablon jednostek do pikseli, należy użyć następujących formuł:

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

 

Podobnie aby przekonwertować z pikseli jednostkom szablonu okno dialogowe, należy użyć następujących formuł:

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

 

Mnożenie jest wykonywane przed podziałem aby uniknąć zaokrąglania problemów, jeśli jednostki bazowej nie jest podzielna przez 4 lub 8.

Systemu Windows CE: Windows CE nie obsługuje wartości błędu rozszerzonego dla tej funkcji.

Skrócone informacje

nbsp; Windows &NT: wymagana wersja 3.1 lub nowsza.
Systemu Windows:Wymaga systemu Windows 95 lub nowszego.
Systemu Windows CE:Wymaga wersja 1.0 lub nowsza.
Nagłówka:Zadeklarowane w pliku winuser.h.
Importowanie biblioteki:Użycie user32.lib.

Zobacz też

Omówienie pola dialogowego, okno dialogowe pole funkcji, MapDialogRect

Index