הודעות העכבר באזור של הלקוח

חלון מקבל הודעה העכבר באזור הלקוח כאשר מתרחש אירוע העכבר בתוך אזור הלקוח של החלון. המערכת שולח את ההודעה WM_MOUSEMOVE החלון כאשר המשתמש מזיז את הסמן בתוך אזור הלקוח. אותו הצבות אחת ההודעות הבאות כאשר המשתמש לוחץ או משחרר את לחצן העכבר כאשר הסמן נמצא בתוך אזור הלקוח.

הודעה משמעות
WM_LBUTTONDBLCLK לחצן העכבר השמאלי היה לחיצה כפולה.
WM_LBUTTONDOWN היה לחוץ את לחצן העכבר השמאלי.
WM_LBUTTONUP לחצן העכבר השמאלי שוחרר.
WM_MBUTTONDBLCLK לחצן העכבר האמצעי היה לחיצה כפולה.
WM_MBUTTONDOWN היה הלחיצה על לחצן העכבר האמצעי.
WM_MBUTTONUP לחצן העכבר האמצעי שוחרר.
WM_RBUTTONDBLCLK לחצן העכבר הימני היה לחיצה כפולה.
WM_RBUTTONDOWN היה לחוץ את לחצן העכבר הימני.
WM_RBUTTONUP לחצן העכבר הימני שוחרר.

פרמטרים של הודעה

הפרמטר lParam הודעה העכבר באזור הלקוח מציין את המיקום של הנקודה החמה של הסמן. המילה נמוכה-סדר מציין הקואורדינטה x של הנקודה החמה, ומציינת המילה הגבוהות הקואורדינטה y. הקואורדינטות מקבלים בקואורדינטות של הלקוח. מערכת הקואורדינטות של הלקוח, מקבלים כל נקודות על המסך ביחס הקואורדינטות (0, 0) בפינה הימנית העליונה של אזור הלקוח.

הפרמטר wParam מכיל הדגלים המציינים את המצב של לחצני העכבר, המקשים ctrl ו- shift לחוצים בזמן האירוע העכבר. באפשרותך לבדוק עבור דגלים אלה בעת עיבוד ההודעה העכבר תלויה במצב של לחצן עכבר אחר או ctrl או את מקש shift. הפרמטר lParam יכול להיות שילוב של הערכים הבאים.

ערך משמעות
MK_CONTROL הוא מקש ctrl לחוץ.
MK_LBUTTON לחצן העכבר השמאלי הוא למטה.
MK_MBUTTON לחצן העכבר האמצעי הוא למטה.
MK_RBUTTON הלחצן הימני של העכבר אינו פועל.
MK_SHIFT מקש shift מושבת.

לחץ פעמיים על הודעות

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

יישום לקבל, להגדיר ערכי זמן קצוב לחיצה כפולה על-ידי שימוש בפונקציות GetDoubleClickTime ו- SetDoubleClickTime , בהתאמה. לחלופין, היישום להגדיר את ערך הזמן הקצוב לחיצה כפולה באמצעות דגל SPI_SETDOUBLECLICKTIME SystemParametersInfo פונקציה. ניתן גם להגדיר את גודל המלבן השימושים מערכת לזיהוי לוחץ פעמיים על-ידי העברת הדגלים SPI_SETDOUBLECLKWIDTH ו- SPI_SETDOUBLECLKHEIGHT כדי SystemParametersInfo. הערה הגדרת ערך הזמן הקצוב פעמיים ומלבן משפיעה על כל היישומים.

קיים חלון מוגדר על-ידי יישום לא, כברירת מחדל, לקבל פעמיים על הודעות. בשל התקורה מערכת מעורב ביצירת לחץ פעמיים על הודעות, הודעות אלה נוצרים רק עבור windows השייכים למחלקות בעלי סגנון מחלקה של CS_DBLCLKS. על היישום לקבוע סגנון זה בעת רישום מחלקת חלון. לקבלת מידע נוסף, ראה חלון מחלקות.

לחץ פעמיים על הודעה היא תמיד ההודעה השלישי בסדרת ארבעה-הודעה. תחילה שתי הודעות הלחצן לחוץ, להלבשה הודעות שנוצרו על ידי הלחיצה הראשונה. הלחיצה השניה יוצר ההודעה פעמיים ואחריו על לחצן אחר עד ההודעה. לדוגמה, לחיצה כפולה על לחצן העכבר השמאלי מייצר את רצף ההודעות הבאות:

WM_LBUTTONDOWN
WM_LBUTTONUP
WM_LBUTTONDBLCLK
WM_LBUTTONUP

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

Index