Я использую этот код для установки начального размера моих кнопок:
// Now check button sizes
auto *pDC = m_btnPreview.GetDC();
if (pDC != nullptr)
{
pDC->SelectObject(GetFont());
auto sizeActualSize = pDC->GetTextExtent(strButtonText);
sizeActualSize.cx += 10;
if (sizeActualSize.cx > rctOK.Width())
{
// We need to consistently resize both buttons
int iButtonGap = rctCancel.left - rctOK.right;
rctCancel.left = rctCancel.right - sizeActualSize.cx;
rctOK.right = rctCancel.left - iButtonGap;
rctOK.left = rctOK.right - sizeActualSize.cx;
GetDlgItem(IDOK)->MoveWindow(rctCancel);
m_btnPreview.MoveWindow(rctOK);
}
ReleaseDC(pDC);
}
Работает нормально.Я правильно установил шрифт так, чтобы возвращаемый размер был правильным.Но я добавил значение 10, чтобы немного дополнить его, чтобы кнопка выглядела лучше:
Есть ли конкретная константа MFC для значения по умолчаниюразрыв вокруг кнопки?Вместо того, чтобы обмануть его значением 10?