Em đang code 1 chương trình vẽ đa giác trong MFC. Chương trình đơn giản là nhái cách vẽ đa giác của Microsoft Paint nhưng em gặp 1 trục trặc ở chỗ này . Trong Paint, em thấy nét đầu tiên phải LeftButtonDown và Move Mouse thì mới hiện ra ,chỗ này bỏ qua , rắc rối xuất hiện ở những nét vẽ bước thứ 2 cho đến khi kết thúc 1 đa giác .

Nếu ta nhấn tiếp LeftButtonDown thì nét thứ 2 của đa giác hiện ra ,tuy nhiên nếu ta LeftButtonDown và lại Move Mouse thì sẽ chỉnh được hướng xoay cho nét thứ 2 ,tương tự như vậy cho nét thứ n. Em cũng bắt chước thao tác như thế nhưng khi em LeftButtonDown và Move thì nét vẽ khi Down Mouse xuống bị dính lại ,nó ko mất đi như trong Paint. (em dùng cách hàm MoveTo, LineTo để vẽ đa giác). Còn nét xoay khi Move thì ngon lành do em xài SetROP2().

Vậy cho em hỏi làm sao có thể thực hiện 2 thao tác như trong Paint ?

+ Nếu chỉ LeftButtonDown thì hiện ra nét vẽ thứ n. (n > 1)
+ Nếu LeftButtonDown và Move thì nét vẽ khi Down phải biến mất.

PS: EM đã thử dùng Invalidate() để clear nguyên vùng client ngay khi vừa Move Mouse nhưng cách này ko hay.