Проверьте, какая кнопка нажата в функции обработчика ON_COMMAND_RANGE

0

Поэтому я сделал функцию с несколькими кнопками в одной функции

ON_COMMAND_RANGE(IDC_BUTTON1, IDC_BUTTON30, CDatenbankView::DeleteButtons)

Теперь, я должен узнать в своей функции, на которую нажата кнопка.

void CDatenbankView::DeleteButtons(UINT nID)
{
    if (*Button1 is clicked*)
    {
        //Do something
    }
}

Может кто-нибудь мне помочь? Я действительно понятия не имею. У меня 30 кнопок, и я не хочу писать 30 различных функций.

Я работаю с MFC.

  • 0
    сделайте массив кнопок, тогда вы можете выполнить итерацию или получить прямой доступ к нужной.
  • 1
    Что не так с if (nID == IDC_BUTTON1) { /* Do something */ } ?
Теги:
mfc

1 ответ

1
Лучший ответ

Ваша функция уже содержит ответ. Вы получаете идентификатор кнопки с nID в вашем обработчике.

if (nID==IDC_BUTTON1)
   // do buton 1 stuff
   ...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню