Trong sự kiện OnClick của TImage, tôi muốn trích xuất tọa độ x, y của chuột. Tôi thích chúng liên quan đến hình ảnh hơn, nhưng liên quan đến hình dạng hoặc cửa sổ cũng tốt.Làm cách nào để nhận tọa độ của con chuột khi điều khiển được nhấp?
Trả lời
Mouse.CursorPos chứa TPoint, lần lượt chứa vị trí X và Y. Giá trị này nằm trong các tọa độ toàn cục, vì vậy bạn có thể dịch sang biểu mẫu của mình bằng cách sử dụng thường trình ScreenToClient sẽ dịch tọa độ màn hình sang tọa độ cửa sổ.
Theo tệp trợ giúp Delphi, Windows.GetCursorPos có thể bị lỗi, Mouse.CursorPos kết thúc tốt đẹp việc này để tăng EOsException nếu nó không thành công.
var
pt : tPoint;
begin
pt := Mouse.CursorPos;
// now have SCREEN position
Label1.Caption := 'X = '+IntToStr(pt.x)+', Y = '+IntToStr(pt.y);
pt := ScreenToClient(pt);
// now have FORM position
Label2.Caption := 'X = '+IntToStr(pt.x)+', Y = '+IntToStr(pt.y);
end;
Làm thế nào về điều này?
procedure TForm1.Button1Click(Sender: TObject);
var
MausPos: TPoint;
begin
GetCursorPos(MausPos);
label1.Caption := IntToStr(MausPos.x);
label2.Caption := IntToStr(MausPos.y);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
SetCursorPos(600, 600);
end;
Tìm thấy trực tuyến này ở đâu đó một lần và lưu nó trong codesnippet tôi DB :)
This page lẽ sẽ giải quyết tất cả các câu hỏi của bạn tuy nhiên ... có vẻ như là chức năng để đi từ khách hàng để tọa độ màn hình và lưng vv ..
Chúc may mắn!
Như những người khác đã nói, bạn có thể sử dụng Mouse.CursorPos hoặc GetCursorPos chức năng, nhưng bạn cũng có thể chỉ xử lý các sự kiện onmousedown hoặc onMouseUp thay vì OnClick. Bằng cách này, bạn sẽ nhận được các giá trị X và Y của bạn dưới dạng tham số cho trình xử lý sự kiện của bạn mà không phải thực hiện bất kỳ lệnh gọi hàm bổ sung nào.
Thuộc tính Mouse.CursorPos
sẽ cho bạn biết vị trí hiện tại của chuột. Nếu máy tính chạy chậm chạp, hoặc nếu chương trình của bạn chậm phản hồi các tin nhắn, thì nó có thể không giống với vị trí mà chuột có khi sự kiện OnClick
xảy ra lần đầu tiên. Để có được vị trí của chuột tại thời điểm nút chuột được nhấp vào, hãy sử dụng GetMessagePos
. Báo cáo hiển thị tọa độ màn hình; dịch sang tọa độ của khách hàng với TImage.ScreenToClient
.
Cách khác là tự mình xử lý các sự kiện OnMouseDown
và OnMouseUp
; các thông số của chúng bao gồm các tọa độ. Hãy nhớ rằng cả hai sự kiện cần phải xảy ra để một số nhấp xảy ra. Bạn cũng có thể muốn phát hiện kéo hoạt động, vì có thể bạn sẽ không muốn xem xét việc kéo để được tính là một lần nhấp.
- 1. MATLAB cách nhận tọa độ nhấp chuột
- 2. JFreeChart nhận tọa độ chuột
- 3. lật tọa độ khi vẽ để điều khiển
- 4. Làm thế nào để có được tọa độ của một điểm trên click chuột với JFreeChart?
- 5. Lấy nhấp chuột tọa độ trong Android ListView OnItemClickListener
- 6. Nhấp vào hình ảnh, nhận tọa độ
- 7. Làm cách nào để tôi nhận được điểm/tọa độ mà người dùng đã nhấp vào chế độ xem android?
- 8. Làm cách nào để dịch chính xác tọa độ pixel sang tọa độ canvas trong Android?
- 9. SVG Chụp tọa độ chuột
- 10. API Google Maps 3: Nhận tọa độ từ Nhấp chuột phải
- 11. Làm cách nào để nhận được ID của chế độ xem con được nhấp vào được thêm động vào LinearLayout?
- 12. Điều khiển bật lên WPF - Tìm tọa độ X, Y
- 13. Làm cách nào một điều khiển có thể xử lý một cú nhấp chuột bên ngoài điều khiển đó?
- 14. Biến đổi tọa độ trình nghe chuột thành tọa độ biểu đồ
- 15. Tọa độ chuột tương ứng với Frame
- 16. Làm cách nào để có được vị trí X, Y của chuột liên quan đến biểu mẫu ngay cả khi nhấp vào một điều khiển khác?
- 17. Làm cách nào để mô phỏng nhấp chuột bằng cách sử dụng tọa độ x, y trong JavaScript?
- 18. Làm thế nào để có được tọa độ x và y của hình ảnh bitmap trong điều khiển hình ảnh?
- 19. Làm cách nào để nhận URL của trình điều khiển từ chế độ xem trong Codeigniter?
- 20. Làm cách nào để chế độ xem của tôi phản hồi với con lăn chuột?
- 21. Nhấp chuột của chuột jQuery() được khởi chạy bằng điều hướng bàn phím
- 22. Sự kiện nhấp chuột jQuery - Làm cách nào để biết liệu con chuột đã được nhấp hay đã nhập phím đã được nhấn chưa?
- 23. Trong WPF, làm cách nào để chọn mục treeview bên dưới con trỏ của tôi khi nhấp chuột phải?
- 24. Tìm tọa độ con trỏ trong raphael
- 25. Làm thế nào để cấu hình Eclipse để hiển thị tọa độ của con trỏ?
- 26. Làm cách nào để lấy thành phần ở vị trí nhấp chuột khi sử dụng TableCellEditor?
- 27. ActionScript - Tọa độ chuột không chính xác?
- 28. Chuột điều khiển dành cho cha mẹ Nhập/Rời khỏi sự kiện Với điều khiển con
- 29. Làm cách nào để tạo điều khiển ActiveX được viết bằng C# tăng sự kiện trong JavaScript khi được nhấp?
- 30. Làm cách nào để mở Trình đơn jQuery Superfish khi nhấp chuột thay vì di chuột?