01/10/2018, 08:49
Lấy vị trí con trỏ chuột hoặc 1 control trên màn hình máy tính WPF
Chào mọi người, e đang muốn khi kéo chuột trong 1 control thì vị trí của form trên màn hình máy tinh sẽ thay đổi, vì vậy e muốn lấy được vị trí của chuột và vị trí của form hay 1 control trên màn hình máy tính để có thể thay đổi ạ, e có tìm hiểu trên mạng thì thấy winform có cái cursors.Posiontion, còn bên WPF thì lại không có ạ, vậy nên e mong muốn được mọi người chỉ giáo ạ
e xin cảm ơn
Bài liên quan
Cậu đang custom 1 cái Window và giờ muốn giữ chuột trên TitleBar kéo đi thì Window được kéo đi theo ?
Thế thì cách đơn giản là khi LeftMouseButtonDown trên cái TitleBar thì gọi hàm DragMove.
Còn lấy vị trí chuột trên 1 control thì dùng:
Với element là control muốn lấy toạ độ chuột. Ví dụ:
Dạ, e muốn lấy vị trí trên màn hình chứ k phải trên 1 control ạ
mình muốn lấy vị trí của 1 control khác trên màn hình như cần thay đổi những gì ạ
thay this trong
Mouse.GetPosition(this)
thành control đóvậy cái this này là cái con chuột phải k bạn
nó là cái form mà bạn đang thao tác.
Ví dụ bạn muốn cái form nó ẩn thì dùng
Hide();
haythis.Hide();
cũng thếmình vẫn chưa hiểu lắm, nếu this là cái form thì thay đổi this bằng control mình muốn lấy vị trí sao lại được nhỉ
Giả sử bạn có một cái Form2
trong Form1 bạn gọi
var ahjhj = new Form2();
thìahjhj
là một control mới đó. Khi nào bạn gọiahjhj.Show();
thì cái Form2 sẽ hiện ra và có position của nó, trong Form1 bạn get vị trí của mouse đối với Form2 như sau:vậy muốn get vị trí của chuột hoặc form trên màn hình thì sao nhỉ ??, cái bạn làm ở trên mình k hiểu lắm
Dùng PInvoke để gọi Windows API nhé :
docs.microsoft.com
GetCursorPos function
Retrieves the position of the mouse cursor, in screen coordinates.