Я создал простое диалоговое приложение и в CDialog по умолчанию добавил три кнопки (путем их перетаскивания) с помощью редактора Visual Studio.
Там также есть кнопки ОК и Отмена по умолчанию.
Я хочу установить фокус на кнопку 1 при нажатии кнопки 3.
Я установил для свойства Flat значение true в свойствах кнопок muy.
Я закодировал это:
void CbuttonfocusDlg::OnBnClickedButton3()
{
// TODO: Add your control notification handler code here
GetDlgItem(IDC_BUTTON1)->SetFocus();
Invalidate();
}
Но бодер в button1 никогда не рисуется. Каретка (пунктирная линия, обозначающая фокус) отображается только в том случае, если я нажимал клавишу TAB в любое время до нажатия кнопки 3.
Я хочу, чтобы кнопка выглядела точно так же, как она выглядит после нажатия на нее. Показывать пунктирную линию внутри кнопки программно, будет плюсом.
Что я хочу:
Что я получаю: