LoadKeyboardLayout

הפונקציה LoadKeyboardLayout טוענת פריסת לוח מקשים חדשה לתוך המערכת. מספר פריסות לוח מקשים ניתן לטעון בכל פעם, אך רק אחד לכל תהליך פעיל בכל פעם. טעינת מספר פריסות לוח מקשים הופכת ניתן להחליף במהירות בין פריסות.

(HKL LoadKeyboardLayout LPCTSTR  pwszKLID, / / שם של פריסה כדי לטעוןUINTדגלים / / מקשים דגלי פריסה);
 

פרמטרים

pwszKLID
המצביע אל המאגר אשר מציין את השם של פריסת לוח המקשים כדי לטעון. שם זה הוא מחרוזת המורכבת את הערך ההקסדצימאלי של מזהה השפה (word נמוכה) ואת מזהה התקן (word גבוהה). לדוגמה, האנגלית יש מזהה השפה של 0x0409, כך לפריסת באנגלית ארה ב הראשי נקרא "00000409". וריאציות של פריסת אנגלית ארצות הברית (כגון פריסת Dvorak) נקראים "00010409", "00020409" וכן הלאה.
דגלים
קביעה כיצד פריסת לוח המקשים הוא שיש לטעון. פרמטר זה יכול להיות אחד מהבאים:.
ערך משמעות
KLF_ACTIVATE אם הפריסה שצוינה לא נטענה כבר, הפונקציה הטוענת ומפעילה את הפריסה עבור הליך המשנה הנוכחי.
KLF_NOTELLSHELL מניעת קבלת ובקוד הוו HSHELL_LANGUAGE בעת טעינת הפריסה החדשה של שגרה הוו ShellProc . ערך זה משמש בדרך כלל בעת יישום טעינת מספר פריסות אחד אחרי השני. החלת ערך זה לכל אך הפריסה האחרונה מעכבת את המעטפת עיבוד עד נוספו כל הפריסות.
KLF_REORDER להעברת הפריסה שצוינה ראש הרשימה פריסות לוח מקשים, ביצוע הפריסה את הפריסה הפעילה עבור הליך המשנה הנוכחי. ערך זה מסדר את הרשימה פריסות לוח מקשים גם אם לא סופק KLF_ACTIVATE.
KLF_REPLACELANG Windows NT 4.0, Windows 95 ואילך:אם הפריסה החדשה יש אותו מזהה השפה של הפריסה הנוכחית, הפריסה החדשה מחליף את הקובץ הנוכחי כ הפריסה עבור שפה זו. אם ערך זה אינו מספק הפריסות יש את מזהי שפה אותה, הפריסה הנוכחית אינה מוחלפת, הפונקציה מחזירה NULL.
KLF_SUBSTITUTE_OK החלפת פריסת לוח המקשים שצוין עם פריסה אחרת מועדפת על-ידי המשתמש. הפעלת המערכת עם זה מוגדר הדגל ולאחר היישום שלך תמיד להשתמש בדגל זה מומלץ. ההחלפה מתרחשת רק אם מפתח הרישום HKEY_CURRENT_USER\Keyboard Layout\Substitutes מגדיר במפורש פריסה החלפת. לדוגמה, אם המפתח כולל את שם הערך "00000409" בעל ערך "00010409", טוען את האנגלית פריסה ("00000409") גורמת דבוז'אק באנגלית לפריסת ארה ב ("00010409") יש לטעון במקום זאת. המערכת משתמשת KLF_SUBSTITUTE_OK בעת אתחול, מומלץ כי כל היישומים השתמש בערך זה בעת טעינת פריסות כדי לוודא כי העדפת המשתמש נבחרה.
KLF_SETFORPROCESS Windows NT 5.0 ואילך:: דגל זה תקף רק עם KLF_ACTIVATE. מפעיל את פריסת לוח המקשים שצוין עבור התהליך כולו ושולח את ההודעה WM_INPUTLANGCHANGE כל הליכי המשנה בתהליך הנוכחי. בדרך כלל, LoadKeyboardLayout מפעילה פריסה עבור הליך המשנה הנוכחי בלבד.
KLF_UNLOADPREVIOUS נתמך ב- Windows NT 5.0, Windows 95 ו- Windows 98:דגל זה חוקי רק עם KLF_ACTIVATE. פורקת את הפריסה הקודם רק אם יצליח טעינה והפעלה של הפריסה שצוינה. מומלץ היישום שלך להשתמש בפונקציה UnloadKeyboardLayout במקום זאת.

להחזיר ערכים

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

הערות

יישום ניתן בדרך כלל יטען את פריסת ברירת המחדל או IME עבור שפה, ניתן לעשות זאת על-ידי ציון רק גירסת מחרוזת של מזהה השפה. אם יישום רוצה לטעון פריסה ספציפיים או IME, זה צריך לקרוא את הרישום כדי לקבוע את מזהה פריסה ספציפיים כדי להעביר ל- LoadKeyboardLayout. במקרה זה, בקשה להפעיל את נקודת האחיזה פריסת לוח המקשים המהווה ברירת מחדל עבור אזור יפעילו את השם התואם הראשון. IME ספציפי יופעלו באמצעות נקודת אחיזה פריסת לוח המקשים מפורשות חזר GetKeyboardLayout, GetKeyboardLayoutListאו LoadKeyboardLayout.

Windows 95 ו- Windows 98: אם פריסה היא לטעון באותה השפה של פריסה שנטען קודם לכן, KLF_REPLACELANG את דגל הוא לא קבע, השיחה נכשל. פריסת שנטען אחת בלבד להיות משויכות השפה הנתונה. (היא מקובל עבור עורכי שיטות קלט מרובות להיטען עם שיוכים באותה השפה).

QuickInfo

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

ראה גם

מבט כולל על לוח המקשים קלט, בפונקציות קלט מלוח המקשים, ActivateKeyboardLayout, GetKeyboardLayoutName, MAKELANGID,UnloadKeyboardLayout

Index