程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 代碼-qt中鼠標點擊view獲取點並將坐標轉換為scene坐標之後在坐標處繪制item,位置發生偏移

代碼-qt中鼠標點擊view獲取點並將坐標轉換為scene坐標之後在坐標處繪制item,位置發生偏移

編輯:編程綜合問答
qt中鼠標點擊view獲取點並將坐標轉換為scene坐標之後在坐標處繪制item,位置發生偏移

如題,我的組件是用QGraphicsItem繪制的,重載了QMouseEvent,但是點擊時在view上顯示的地方不對,主要代碼如下:
QPoint viewPos = event->pos();//獲取視口坐標
QPointF scenePos = view_1->mapToScene(viewPos);//將視口坐標轉換為場景坐標
select->setRect(scenePos.x(), scenePos.y(), 50, 50);//繪制圓圈
如圖,鼠標點擊位置與圓圈位置的偏移(當前我點擊的是6那個點):
圖片說明
哪位大俠幫幫小弟一下,感激不盡!

最佳回答:


已解決,是因為多層layout布局的原因,layout布局會有個margin,默認為11px。
希望對其他人有用。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved