Tôi có một cửa sổ để xử lý các tin nhắn WM_NCLBUTTONUP, để xử lý các nhấp chuột trên các nút tùy chỉnh trên thanh phụ đề. Điều này làm việc tuyệt vời khi cửa sổ được phóng to, nhưng khi nó không được, thông báo WM_NCLBUTTONUP sẽ không bao giờ xuất hiện! Tôi nhận được một tin nhắn WM_NCLBUTTONDOWN mặc dù. Kỳ lạ WM_NCLBUTTONUP sẽ đến nếu tôi nhấp vào bên phải của thanh trình đơn, nhưng bất cứ nơi nào dọc theo thanh phụ đề/khung cửa sổ, tin nhắn không bao giờ đến.Vấn đề tò mò về thông báo WM_NCLBUTTONUP bị thiếu khi cửa sổ không được tối đa
Sau một thời gian gỡ lỗi, tôi phát hiện ra rằng nếu tôi đặt điểm ngắt trên CMainFrame :: OnNcLButtonDown(), hãy nhấp vào thanh phụ đề, nhưng giữ nút chuột được giữ lại, để trình gỡ lỗi ngắt trong hàm, nhấn F5 để tiếp tục gỡ lỗi, sau đó thả nút chuột - kỳ diệu WM_NCLBUTTONUP được gửi !!
Câu hỏi của tôi là hai lần, (1) điều gì đang xảy ra? (2) làm thế nào để tôi có được xung quanh vấn đề này "".
Tôi cũng lưu ý rằng có một số người khác trên internet có cùng vấn đề (Google nhanh chóng tiết lộ rất nhiều người khác có cùng vấn đề nhưng không có giải pháp).
Sửa
Cám ơn hai trả lời đầu tiên, tôi đã cố gắng gọi ReleaseCapture trong NCLButtonDown, nhưng nó không có hiệu lực thi hành (trong thực tế, nó trả về NULL, cho thấy ảnh chụp không được đặt ra). Tôi chỉ có thể giả định rằng các lớp cơ sở (def window proc) chức năng có thể thiết lập một nắm bắt. Tôi sẽ điều tra vào thứ hai ...