1
У меня есть кнопка в диалоговом окне MFC. Как сделать текст полужирным?Как сделать надпись кнопки полужирным шрифтом в MFC?
У меня есть кнопка в диалоговом окне MFC. Как сделать текст полужирным?Как сделать надпись кнопки полужирным шрифтом в MFC?
Вы можете создать новый CFont и вызвать WM_SETFONT на кнопке. Что-то вроде этого:
// note: m_font is a class variable of type CFont
m_font.CreateFont(10, 0, 0, 0, FW_BOLD, 0, 0, 0, 0, 0, 0, 0, 0, "Arial")
GetDlgItem(IDC_BUTTON1)->SendMessage(WM_SETFONT, WPARAM(HFONT(font)), 0);
class CYourDialog : CDialog
{
public:
virtual BOOL OnInitDialog(); // override
private:
CButton m_button;
CFont m_font;
};
BOOL CYourDialog::OnInitDialog()
{
__super::OnInitDialog();
CFont* font = m_button.GetFont();
LOGFONT logFont;
font->GetLogFont(&logFont);
logFont.lfWeight = FW_BOLD;
m_font.CreateFontIndirect(&logFont);
m_button.SetFont(&m_font);
}
Конечно, вы должны сделать GetFont() -> GetLogFont() кнопки, изменять свойства lfWeight LOGFONT структуры и создать новый шрифт, основанный на нем. – macbirdie
спасибо @macbirdie, именно то, что я собирался проследить –