SetClassLong

הפונקציה SetClassLong יחליף את הערך (ארוכה) 32 סיביות שצוין ב ההיסט שצוין לתוך הזיכרון מחלקה נוספת או של מבנה WNDCLASSEX עבור המחלקה אליה שייך החלון שצוין.

(DWORD SetClassLong HWND  hWnd, / / לטפל של חלוןintnIndex, / / אינדקס של הערך כדי לשנותארוךdwNewLong / / חדשים בערך);
 

פרמטרים

hWnd
לטפל כדי החלון, בעקיפין, את המחלקה אליה שייך החלון.
nIndex
מציין את הערך 32 סיביות כדי להחליף. כדי להגדיר ערך של 32 סיביות בזיכרון מחלקה נוספת, ציין את היסט הבית חיובי, מבוסס אפס של הערך שיש להגדיר. ערכים חוקיים נעים בטווח שבין אפס דרך מספר הבתים של זיכרון מחלקה נוספת, מינוס ארבע; לדוגמה, אם ציינת הבתים 12 או יותר של זיכרון מחלקה נוספת, ערך של 8 יהיה אינדקס השלישי מספר שלם של 32 סיביות. כדי לקבוע ערך אחר בתוך מבנה WNDCLASSEX , ציין אחד מהערכים הבאים:
ערך פעולה
GCL_CBCLSEXTRA הגדרת הגודל, בבתים, של זיכרון נוסף המשויכות למחלקה. הגדרת ערך זה אינו משנה את מספר הבתים נוסף כבר מוקצה.
GCL_CBWNDEXTRA הגדרת הגודל, בבתים, של זיכרון חלון נוסף המשויך לכל חלון בכיתה. הגדרת ערך זה אינו משנה את מספר הבתים נוסף כבר מוקצה. לקבלת מידע אודות גישה אל זיכרון זה, ראה SetWindowLong.
GCL_HBRBACKGROUND מחליף את נקודת האחיזה של המברשת ברקע המשויכות למחלקה.
GCL_HCURSOR מחליף את נקודת האחיזה של הסמן המשויכות למחלקה.
GCL_HICON מחליף את נקודת האחיזה של סמל המשויכות למחלקה.
GCL_HMODULE מחליף את נקודת האחיזה של המודול שנרשמו המחלקה.
GCL_MENUNAME מחליף את הכתובת של מחרוזת שם תפריט. המחרוזת מזהה המשאב תפריט המשויכות למחלקה.
GCL_STYLE מחליף את הסיביות סגנון מחלקת חלון.
GCL_WNDPROC מחליף את הכתובת של ההליך חלון המשויכות למחלקה.

dwNewLong
מציין את ערך חלופי.

להחזיר ערכים

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

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

הערות

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

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

שמירת זיכרון מחלקה נוספת על-ידי ציון ערך שאינו אפס חבר cbClsExtra של מבנה WNDCLASSEX בהם משתמשים עם הפונקציה RegisterClassEx.

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

חלונות CE: הפרמטר nIndex הוא בית היסט אך חייב להיות כפולה של 4 בתים. גישה unaligned אינו נתמך.

אף אחד מהערכים רגיל GCL_ * נתמכים בפרמטר nIndex , למעט אחד. אם ההתקן שאתה שמכוונים תומך סמן העכבר, באפשרותך להשתמש בערך GCL_HCURSOR בפרמטר nIndex.

הערה גירסאות Windows CE התומכים סמני עכבר כוללות את הרכיבים Iconcurs ו- Mcursor במקום הסמל ורכיבים הסמן.

QuickInfo

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

ראה גם

מבט כולל על מחלקות חלון, פונקציות המחלקה חלון, GetClassLong, RegisterClassEx, SetWindowLong, WindowProc, WNDCLASSEX