powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / динамическое создание кнопок и обработчик их действий
2 сообщений из 2, страница 1 из 1
динамическое создание кнопок и обработчик их действий
    #32730382
black zorro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
суть такова создаю в VC6 (MFC) диалог на котором может быть размещено произвольное количество кнопок.

Код: plaintext
1.
2.
3.
4.
for (int i =  0 ; i < n; i++){
 CButton * b = new CButton;
 b->Create (,,, this ,,,  ID_BUTTON_BASE + i);
}
как видите у меня у каждой кнопки есть собственный идентфикатор по правилу база + номер кнопки.
как бы мне написать такую запись в очередь событий BEGIN_MESSAGE_MAP ()
чтобы при вызове функции общей для всех этих кнопок знать на какую именно было нажатие.
...
Рейтинг: 0 / 0
динамическое создание кнопок и обработчик их действий
    #32730555
Фотография josia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
BEGIN_MESSAGE_MAP(CMnogoknopDlg, CDialog)
	 //{{AFX_MSG_MAP(CMnogoknopDlg) 
            ON_COMMAND_RANGE(ID_BUTTON_BASE, ID_BUTTON_BASE+ 20 , OnButtonBase)
...
	 //}}AFX_MSG_MAP 
END_MESSAGE_MAP()
Здесь 20 это махимум Вашего n-1
Код: plaintext
1.
2.
3.
4.
5.
6.
void CMnogoknopDlg::OnButtonBase( UINT nID )
{
  int n = nID - ID_BUTTON_BASE;
	CString str;
	str.Format("%d",n);
	AfxMessageBox(str);
}
и
Код: plaintext
  afx_msg void OnButtonBase( UINT nID );
Удачи
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / динамическое создание кнопок и обработчик их действий
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]