0
有人可以解釋我如何將對話框單位轉換爲屏幕座標值? 我看到有MapDialogRect函數,但它的轉換RECT,我想轉換x,y和cx,cy值到屏幕座標值,我真的不明白如何實現這一點。對話框單位到屏幕座標
在此先感謝。
有人可以解釋我如何將對話框單位轉換爲屏幕座標值? 我看到有MapDialogRect函數,但它的轉換RECT,我想轉換x,y和cx,cy值到屏幕座標值,我真的不明白如何實現這一點。對話框單位到屏幕座標
在此先感謝。
如果你已經有一個窗口句柄,那麼只需使用the MapDialogRect
function。正如其他人已經指出,MapDialogRect
需要RECT
,所以如果你沒有RECT
,你可以創建一個。
RECT rc;
rc.left = x;
rc.top = y;
rc.right = x + cx;
rc.bottom = y + cy;
MapDialogRect(hdlg, &rc);
如果你的問題是,你沒有一個對話框,把手擺在首位,然後爲MapDialogRect
函數的文檔告訴你如何進行計算:確定字符的平均尺寸爲對話框框(文檔稱爲baseunitX
和baseunitY
),然後將其插入公式中。
請注意,這會計算對話框的客戶端矩形。您仍然需要添加非客戶端空間。目前還不清楚你想要做什麼,所以我不知道是否添加非客戶端空間是否合適。
爲什麼不使用MapDialogRect()?你想要如何編寫一個RECT的工作指導? – AAT
您是否正在嘗試閱讀資源中的DIALOGTEMPLATE,然後將其轉換爲?或者你已經有一個創建的對話框?如果後者,一切都已經在屏幕單位。 –
你會做什麼? –