Member 13798855 Ответов: 1

Tabctrl VB и mfc как получить индекс предыдущей вкладки


у меня есть запрос относительно кода VB, как указано ниже:

tabMain_Click(PreviousTab как целое число)

в vb есть параметр, то есть предыдущая вкладка, которая показывает некоторое значение по умолчанию, так как моя вкладка фиксирована на 1, она должна всегда показывать ноль, но она показывает несколько раз разные значения в vb.

в основном мое сомнение заключается в том, как получить индекс предыдущей вкладки в mfc, поскольку olny имеет текущий выбор или getavtivepageindex ?

Что я уже пробовал:

я попробовал onnotify

NMHDR* pnmh = (NMHDR*)lParam;

if ( TCN_SELCHANGE == pnmh->код )

1 Ответов

Рейтинг:
2

Jochen Arndt

Добавьте обработчик уведомлений для TCN_SELCHANGING код уведомления (Windows)[^] и получить фактический (вскоре предыдущий) индекс с помощью Макрос TabCtrl_GetCurSel (Windows)[^]. При необходимости сохраните его в переменной-члене.


Member 13798855

но мы получим только текущий индекс Я хочу предыдущий индекс

Jochen Arndt

Это уведомление отправлено до изменение вступает в силу таким образом, что фактический индекс в это время является предыдущим, когда обрабатывается уведомление TCN_SELCHANGE. Если вы храните индекс в переменной-члене внутри этого обработчика, вы можете получить к нему доступ после того, как произошло изменение, и иметь предыдущий индекс.