MapDialogRect

הפונקציה MapDialogRect המרת יחידות של תיבת הדו-שיח (מפות) שצוין מסך יחידות (פיקסלים). הפונקציה מחליף את הקואורדינטות המצוין מבנה RECT בעזרת הקואורדינטות המומר, המאפשר את מבנה שישמש כדי ליצור תיבת דו-שיח או למקם פקד בתוך תיבת דו-שיח.

(BOOL MapDialogRect HWND  hDlg, / / לטפל בתיבת הדו-שיחLPRECTlpRect / / כתובת של מבנה עם מלבן);
 

פרמטרים

hDlg
מזהה תיבת דו-שיח. פונקציה זו מקבלת רק מזהים ייחודיים עבור תיבות דו-שיח שנוצרו על-ידי אחת מפונקציות יצירת תיבת הדו-שיח; נקודות האחיזה של חלונות אחרים אינם חוקיים.
lpRect
מצביע למבנה RECT אשר מכילה את הקואורדינטות של תיבת הדו-שיח המרת.

להחזיר ערכים

אם הפונקציה מצליחה, הערך המוחזר אינו אפס.

אם הפעולה תיכשל, הערך המוחזר הוא אפס. כדי לקבל מידע שגיאות מורחב, לקרוא GetLastError.

הערות

הפונקציה MapDialogRect מבוסס על ההנחה הראשונית קואורדינטות ב מבנה RECT מייצגות יחידות של תיבת הדו-שיח. להמרת קואורדינטות אלה מיחידות תיבת דו-שיח לפיקסלים, הפונקציה מאחזרת את הנוכחי אופקיים ואנכיים יחידות הבסיס עבור תיבת הדו-שיח, ולאחר מכן מחילה הנוסחאות הבאות

שמאל = (שמאל * baseunitX) / 4 ימינה = (הימנית * baseunitX) / 4 העליון = (העליון * baseunitY) / 8 התחתון = (התחתון * baseunitY) / 8 

 

ברוב המקרים, יחידות הבסיס עבור תיבת הדו-שיח זהים לאלה שאוחזרו על-ידי שימוש בפונקציה GetDialogBaseUnits . אם התבנית בתיבת הדו-שיח היא בסגנון DS_SETFONT, עם זאת, יחידות הבסיס הן רוחב ממוצע הגובה, בפיקסלים, של התווים בגופן שניתנו על ידי תבנית.

QuickInfo

nbsp; Windows &NT: מחייב גירסה 3.1 או גירסה מתקדמת יותר.
Windows:נדרש Windows 95 או גירסה מתקדמת יותר.
חלונות CE:דורש גירסה 1.0 ואילך.
כותרת עליונה:להצהיר על winuser.h.
ייבוא ספריית:השתמש user32.lib.

ראה גם

סקירה כללית של תיבות הדו-שיח, תיבת הדו-שיח אינה מתפקדת, CreateDialog, CreateDialogIndirect, CreateDialogIndirectParam, CreateDialogParam, DialogBox, DialogBoxIndirect, DialogBoxIndirectParam, DialogBoxParam, GetDialogBaseUnits, RECT

Index