簡體   English   中英

坐標混亂

[英]Coordinate confusion

我將QGraphicsItem子類化,並重新實現了paint。
在油漆中,我寫了這樣的東西來標記物品:

 painter->drawText("Test",10,40);

一段時間后,我認為處理帶有單獨項目的標簽可能會很有用。 所以我寫了這樣的東西。

QGraphicsTextItem *label = new QGraphicsTextItem("TEST",this);
setPos(10,40);

但是,兩個“ TEST”圖形未出現在屏幕上的同一位置。 我想差異可能與項目坐標-場景坐標有關。 我嘗試了QGraphicsItem接口內的所有mapFrom ...和mapTo ...組合,但沒有任何進展。 我希望圖紙顯示在屏幕上的同一位置。
我想念什么?

我假設在兩種情況下您都使用相同的字體大小和類型。 如果位置差異很小,則可能是QGraphicTextItem對其中包含的文本使用了一些填充。 我會嘗試使用不會在內部添加奇特的東西的QGraphicsSimpleTextItem,看看您是否仍然遇到相同的問題。 如果使用painter或setPost,則坐標系是相同的,所以這不是問題。 如果這樣做沒有幫助,我建議為兩者指定相同的rect,以避免Qt添加它擁有的分隔空間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM