Использую Lazarus 1.0.12 и fpc 2.6.2 под Win 7 x64 хотя все тоже самое и под Win XP x86.
Для создания приложения пришлось использовать TabControl, поскольку нужны только вкладки (без страниц) и их динамическое создание(сохранение) и удаление в программе.
Все выше сказанное нормально работает, но мне понадобилось открывать вкладки при нажатии правой кнопки мыши решил как и большинство использовать виртуальное нажатие левой кнопки, но не тут то было такое ощущение что TabControl полностью игнорирует нажатие на правую кнопку но при этом PopUp работает...
- Код: Выделить всё
procedure TForm1.TabControl1MouseDown(Sender...);
begin
if Button=mbRight then
begin
//Любой код... ни какой реакции вообще
end;
end;
В следствии возникли вопросовы: Помогите пожалуйста разобраться...
1. Выше сказанное это глюк TabControl или у меня сборка Lazarus'а глючная просто?
2. По поводу вирутуального нажатия на кнопку мыши, если использовать Mouse_Event пропадает кроссплатформенность, каким образом можно это еще реализовать?
- Код: Выделить всё
mouse_event(MOUSEEVENTF_LEFTDOWN,X,Y,0,0);
mouse_event(MOUSEEVENTF_LEFTUP,X,Y,0,0);
3. При наведдении на TabControl вкладки подсвечиваются каким образом можно получить Index подсвеченного Tab'а, что бы передать его например в PopUp?
Прошу меня извинить за мою наглость конечно, но 3 дня поиска в инете не дали желаемых результатов, буду очень благодарен за помощь...