在delphi中如何得到图片中某一个点的绝对坐标(50分)

  • 主题发起人 主题发起人 fishbill
  • 开始时间 开始时间
F

fishbill

Unregistered / Unconfirmed
GUEST, unregistred user!
就像在photoshop中一样当你打开一个图象文件,当鼠标移动到某一点就可以在信息
中看到该点的坐标(象素或厘米), 我要的系象素坐标. 这样的功能在delphi中如何做到?
 
用WINDOWS API , 获取当前MOUSE 的绝对坐标点
GetCursorPos(
var lpPoint: TPoint {receives coordinates of cursor}
): BOOL; {returns TRUE or FALSE}


要想动态取点用TTIMER 可轻松实现 .要示范的话可以贴代码。



 
image1.clienttoscreen
 
image1.clienttoscreen这个如何用,可否说清楚一点?
我的最大问题系,当图片十分大,一个image控件放不下时怎么办。

 
晕~Delphi的帮助里有啊
什么叫Image空间放不下?至多是看不到而已
你的意思我大概清楚了,提供一个思路:
1.Mouse.CursorPos得到当前鼠标坐标(相对于屏幕)
2.记录下你显示区(应该是一个PaintBox,你把能显示出来的地方画在上面)相对于整个图片的Rect范围,例如你整个图片是1000*1000,显示出来的
部分可记录为(500,500,600,600)
3.显示区.ScreenToClient求得相对于显示区的坐标,可能是(100,100)
4.你现在相对于图像的坐标就是(500+100,500+100)
具体实现不是很复杂,你试试看吧
给分吧:)
 
我试试,成功了就一定给分。
 
我的意思是这样的。
我做了一个dos下的监控系统,功能大概就是有报警就弹出相关层的
平面图,然后在发生报警的地方(预先在图上有特定探头的位置)用闪动的
红点表示。
所以我就要知道这些探头的位置在平面图上的象素是多少,然后在上面画圈。以后是用photoshop一个个点找的,现在有空想写一个小软件。自动记录象素。
我的意思是 例如我的平面图是一个gif文件,我要的就是探头在这个gif文件中的象素坐标

 
我做到了,但不是用你的方法,不过分照给
 
你怎么作到的啊,说来学习学习
 
后退
顶部