如何用鼠标获取Picture Control 控件中图片的像素位置?

gerry2000 2019-06-26 08:18:31
Picture控件中的图片是使用 CvvImage::DrawToHDC 显示的。
我现在要通过鼠标点击Picture控件中的位置,来获取Picture控件中图片的像素位置。

例如我的图片是640*480 像素。 在Picture控件中显示, Picture控件可能是700*500;
鼠标点击时我可以获得Picture控件的位置, 但如何才能获得Picture控件中图片(640*480)的像素位置。


Picture控件和图片会有什么用的映射关系呢?
...全文
440 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
相门三少 2019-07-29
  • 打赏
  • 举报
回复
将图片的data读入buffer中,然后根据鼠标指向的位置,从buffer中对应位置读出pixel值
worldy 2019-07-03
  • 打赏
  • 举报
回复
图片写入DC后,你想访问图片内容,你必须BitBlt出来(设备DC---> 内存DC)然后访问内存
zgl7903 2019-07-02
  • 打赏
  • 举报
回复
绿色盒子 2019-06-27
  • 打赏
  • 举报
回复
好像没啥好办法,还是用比列关系算个差不多的吧,差距不会很大的
gerry2000 2019-06-27
  • 打赏
  • 举报
回复
例如x坐标可以640/700*x来得到图像的大概坐标,到我觉得应该有更准确的方法
schlafenhamster 2019-06-27
  • 打赏
  • 举报
回复
"图片像素位置" 与图片 格式 有关 !
gerry2000 2019-06-27
  • 打赏
  • 举报
回复
引用 4 楼 zgl7903的回复:

{
  CWnd *pCtrl = GetDlgItem(IDC_PIC_CTRL);
  if(pCtrl && pCtrl->m_hWnd)
  {
    CDC *pDC = pCtrl->GetDC();
    if(pDC)
    {
      COLORREF cr = pDC->GetPixel(x, y);
      pCtrl->ReleaseDC(pDC);
    }
  }
}

多谢兄弟回复。我需要的不是这个位置的Rgb值。需要的是picture控件中位置对应图像的坐标位置(即这个图像的行列值,左上角看成(0,0))
zgl7903 2019-06-27
  • 打赏
  • 举报
回复

{
  CWnd *pCtrl = GetDlgItem(IDC_PIC_CTRL);
  if(pCtrl && pCtrl->m_hWnd)
  {
    CDC *pDC = pCtrl->GetDC();
    if(pDC)
    {
      COLORREF cr = pDC->GetPixel(x, y);
      pCtrl->ReleaseDC(pDC);
    }
  }
}

gerry2000 2019-06-27
  • 打赏
  • 举报
回复
引用 2 楼 zgl7903的回复:
CDC 有 GetPixel函数 CDC::GetPixel
你说的这个函数是获取图片的像素值,我想获得的是Picture控件对应位置的图片像素位置。
gerry2000 2019-06-27
  • 打赏
  • 举报
回复
引用 10 楼 schlafenhamster的回复:
控件MoveWindow成图片大小 后 没有 比例 问题 了,但 图片中的 行列 位置 还是 与 图片 格式 有关
Icon,Bitmap; png ........
我用了一个最笨的办法,把picture控件改成和图片一样大小
schlafenhamster 2019-06-27
  • 打赏
  • 举报
回复
控件MoveWindow成图片大小 后 没有 比例 问题 了,但 图片中的 行列 位置 还是 与 图片 格式 有关
Icon,Bitmap; png ........
gerry2000 2019-06-27
  • 打赏
  • 举报
回复
引用 1 楼 schlafenhamster的回复:
Move 图片 Window 为 图片 大小
控件MoveWindow成图片大小那?
zgl7903 2019-06-26
  • 打赏
  • 举报
回复
CDC 有 GetPixel函数 CDC::GetPixel
schlafenhamster 2019-06-26
  • 打赏
  • 举报
回复
Move 图片 Window 为 图片 大小

19,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧