Trong Delphi năm 2007, trong một sự kiện chuột di chuyển, tôi cố gắng để thay đổi con trỏ chuột với:Làm cách nào để thay đổi con trỏ chuột khi nút chuột trái bị hỏng?
procedure TFr_Board_Display.PaintBox_Proxy_BoardMouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
if left_mouse_button_down then begin
if some_condition then begin
Cursor := crDrag;
end
else begin
Cursor := crNoDrop;
end;
end
else begin
if some_other_condition then begin
Cursor := crHandPoint;
end
else begin
Cursor := crDefault;
end;
end;
end;
ví dụ. Tuy nhiên, khi nút chuột trái bị tắt và tôi di chuyển chuột, con trỏ không thay đổi thành crDrag hoặc crNoDrop. Mã được thực thi (ví dụ: Con trỏ: = crDrag;) nhưng con trỏ không thay đổi. Khi nút chuột trái bật lên và tôi di chuyển chuột, con trỏ sẽ không thay đổi.
(Tôi ban đầu cố gắng sử dụng một số Kéo & sự kiện Drop và tài sản, nhưng không thể có được tất cả mọi thứ để làm việc theo cách tôi muốn.)
Edit: làm rõ hành vi mong muốn, và mã định dạng.
Chỉnh sửa: Cảm ơn bạn, Gamecat, nhưng tôi muốn con trỏ thay đổi khi nút chuột trái bị tắt và trong khi chuột di chuyển con trỏ phải thay đổi qua lại giữa crDrag và crNoDrop.
Đã thêm thông tin, vì vậy có thể sử dụng được khi di chuyển chuột. –