C Charles Unregistered / Unconfirmed GUEST, unregistred user! 1999-11-07 #2 onclick 事件中有鼠标的坐标 x,y 是想对于sender 的客户区. 如果要取得屏幕坐标,用clienttoscreen 函数转换.
U urus Unregistered / Unconfirmed GUEST, unregistred user! 1999-11-07 #4 ?? procedure Tform.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if Button=mbLeft then begin 参数X,Y客户区内的坐标 end; end; 这样得到全局的坐标 var point :Tpoint; GetCursorPos(Point); point.x point.y 就是全局坐标
?? procedure Tform.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if Button=mbLeft then begin 参数X,Y客户区内的坐标 end; end; 这样得到全局的坐标 var point :Tpoint; GetCursorPos(Point); point.x point.y 就是全局坐标
C cytown Unregistered / Unconfirmed GUEST, unregistred user! 1999-11-08 #6 100分:-( 来晚了:-( 先用getcursorpos得到cursor的绝对坐标, 然后用windowfrompoint得到窗口的 handle, 然后再用getwindowrect得到left/top值, 最后用getcursorpos得到的 x/y去减left/top就可以了
100分:-( 来晚了:-( 先用getcursorpos得到cursor的绝对坐标, 然后用windowfrompoint得到窗口的 handle, 然后再用getwindowrect得到left/top值, 最后用getcursorpos得到的 x/y去减left/top就可以了