CATIA-CAA событие CATKeyboardEvent
Вопрос
Я знаю, что в мире всего несколько программистов CAA, но я все равно пытаюсь это сделать...
Я не могу заставить события клавиатуры работать.Я нашел этот код, который выглядит разумно, но уведомление не срабатывает.
AddAnalyseNotificationCB(CATFrmLayout::GetCurrentLayout()->GetCurrentWindow()->GetViewer(),
CATKeyboardEvent::ClassName(),
(CATCommandMethod)&PROTrvTreeView::OnKeyboardEvent, NULL);
void PROTrvTreeView::OnKeyboardEvent(CATCommand * ipCmd, CATNotification * ipEvt, CATCommandClientData iobjData) {
cout<< "KeyboardEvent" <<endl;
}
У кого-нибудь есть какие-нибудь идеи?
Решение
Существует гораздо более плотная группа разработчиков для CAA по:
http://www.3ds.com/alliances/c-java-developers/forum/
Возник тот же вопрос, и несколько человек упомянули, что этот API был несанкционированным, и поэтому вы не можете полагаться на него, даже если он работает.
Другие примеры там, по сути, представляют собой тот же код, что и ваш, но единственный, который претендует на работу, не использует CATKeyboardEvent::className, а вместо этого использует "CATKeybdEvent".Возможно, стоит попробовать.