Подскажите, пожалуйста, я правильно понимаю, что обработать нажатия стрелок (вверх-вниз-влево-вправо) в таблице нельзя? Бакспейс и Ентер обрабатываются, а стрелки нет.Если все же можно, то какие у них коды?
Задание функции обратного вызова для обработки событий в таблице. В случае успешного завершения функция возвращает «1», иначе – «0». Внимание: ВАЖНО! Недопустим вызов функций Clear и DestroyTable для t_id внутри функции обратного вызова f_cb, назначенной на таблицу с данным t_id.
Формат вызова: NUMBER SetTableNotificationCallback (NUMBER t_id, FUNCTION f_cb)
Для функции:
FUNCTION (NUMBER t_id, NUMBER msg, NUMBER par1, NUMBER par2)
Параметры: Для SetTableNotificationCallback: t_id – идентификатор таблицы, f_cb – функция обратного вызова для обработки событий в таблице.
Для функции: t_id – идентификатор таблицы, для которой обрабатывается сообщение, par1 и par2 – значения параметров определяются типом сообщения msg, msg – код сообщения.
Доступные коды событий: QTABLE_LBUTTONDOWN – нажата левая кнопка мыши, при этом par1 содержит номер строки, par2 – номер колонки, QTABLE_RBUTTONDOWN – нажата правая кнопка мыши, при этом par1 содержит номер строки, par2 – номер колонки, QTABLE_LBUTTONDBLCLK – двойное нажатие левой кнопки мыши, при этом par1 содержит номер строки, par2 – номер колонки, QTABLE_RBUTTONDBLCLK – двойное нажатие правой кнопки мыши, при этом par1 содержит номер строки, par2 – номер колонки, QTABLE_SELCHANGED – изменение текущей (выделенной) строки, при этом par1 равен номеру новой выделенной строки, QTABLE_CHAR – нажата символьная клавиша, при этом par2 содержит код клавиши, par1 – текущую выделенную строку, QTABLE_VKEY – нажата клавиша, при этом par2 содержит код клавиши, par1 – текущую выделенную строку, QTABLE_MBUTTONDOWN – нажата вниз средняя кнопка мыши, при этом par1 содержит номер строки, par2 – номер колонки, QTABLE_MBUTTONDBLCLK – двойное нажатие средней кнопки мыши, при этом par1 содержит номер строки, par2 – номер колонки, QTABLE_LBUTTONUP – отпущена левая кнопка мыши, при этом par1 содержит номер строки, par2 – номер колонки, QTABLE_RBUTTONUP – отпущена правая кнопка мыши, при этом par1 содержит номер строки, par2 – номер колонки, QTABLE_CLOSE – закрытие таблицы, при этом par1 и par2 равны нулю.
Спасибо большое за ссылки и мысли. Все сработало. Нужно было просто использовать QTABLE_VKEY вместо QTABLE_CHAR. Но в заблуждение ввело то, что Tab, Enter и BackSpace обрабатываются через QTABLE_CHAR.