Конвертировать из tagRECT / CRect в Gdiplus :: Rect - PullRequest
3 голосов
/ 20 января 2009

Какой самый простой способ преобразовать RECT структуру (tagRECT) или CRect в Gdiplus::Rect?

Gdiplus::Rect tmpRect(rect.top, rect.left, rect.Width(), rect.Height());

работает, но много печатает.

Ответы [ 2 ]

2 голосов
/ 11 июля 2012

Подпись Rect([in] INT x, [in] INT y, [in] INT width, [in] INT height);, поэтому она должна быть

Gdiplus::Rect CopyRect(RECT &rect)
{
    return Gdiplus::Rect(rect.left, rect.top, rect.Width(), rect.Height());
}
2 голосов
/ 20 января 2009

Если интерфейс для Gdiplus :: Rect не имеет удобного конструктора, вы можете создать свою собственную функцию один раз и использовать ее везде.

Gdiplus::Rect CopyRect(const RECT &rect)
{
    return Gdiplus::Rect(rect.left, rect.top, rect.Width(), rect.Height());
}
...