Добрый день расскажите поподробнее о принципе работы функции PreTranslateMessage.
Как я понял мы получаем lpmsg: LPMSG.
Достаем из данной структуры message и wParam и lParam и если нам именно это сообщение подходит, то сами его обрабатываем, а result возвращаем TRUE - чтобы основная программ его не обрабатывала?

?
Напишите пожалуйста небольшой примерчик!

И еще вопрос по GetAdditionalProjectFieldTitle, создаю поле в навигаторе, оно заполняется, меняет цвет, но Заголовок столбца никак выводить не хочет - даже если просто писать
Function GetAdditionalProjectFieldTitle(szFieldUID : PWideChar): PWideChar; CDecl;
begin
Result:= 'Какое нибудь название';
end;
Дмитрий Маслов, на Вас вся надежда!