2012-11-21 39 views
5

Có ai biết làm thế nào để phát hiện nếu một cửa sổ Win32 (c + +) đã ngừng di chuyển?Phát hiện khi một cửa sổ đã ngừng di chuyển?

WM_MOVE phát hiện khi cửa sổ đang di chuyển, nhưng làm cách nào để phát hiện khi cửa sổ bị ngừng di chuyển?

+0

bạn không thực sự biết nó di chuyển, tất cả các bạn biết là được * đã chuyển *. Sự khác biệt là tinh tế. –

+0

Vì vậy, WM_MOVE kích hoạt khi cửa sổ không di chuyển? Chỉnh sửa: Bạn nói đúng. –

+0

Có, Đã gửi sau khi cửa sổ đã được di chuyển. [WM_MOVE message (Windows)] (http://msdn.microsoft.com/en-us/library/windows/desktop/ms632631 (v = vs.85) .aspx). – Zilog

Trả lời

6

Thông báo cửa sổ bạn muốn xử lý là WM_EXITSIZEMOVE.

WM_EXITSIZEMOVE message (Windows) @ MSDN

Tùy thuộc vào những gì bạn muốn đạt được, cũng có khả năng mà bạn có thể được phục vụ tốt hơn bằng cách phản ứng với WM_NCLBUTTONUP, được gửi đi khi nút chuột được phát hành trong các lĩnh vực phi-client của một cửa sổ , chẳng hạn như thanh tiêu đề của bất kỳ cửa sổ với một chú thích, chrome biên giới vv

WM_NCLBUTTONUP message (Windows) @ MSDN

+0

Cảm ơn bạn, vô cùng hữu ích! –

+0

Bạn được chào đón. Ngoài ra, chỉ trong trường hợp bạn đã không nghe nói về nó, Spy + +/Spyxx là khá hữu ích để gỡ lỗi và truy tìm các cửa sổ thông điệp như vậy. http://msdn.microsoft.com/en-us/library/dd460760.aspx – meklarian

Các vấn đề liên quan