![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Tab Control -? [D6, D7, 95/98, 2000, XP]
TIF © (2007-09-15 13:21:00)Здравствуйте.
Вопрос такой: когда нажимаю TAB, то происходит фокусировка на Таб Контрол, и потом можно передвигаться по его вкладкам (с помоью "стрелка влево", "стрелка вправо"). Надо: как-то запретить такой переход, чтобы нельзя было с помощью клавиатуры переходить с одной вкладки на другую.
Пожалуйста, помогите, а то уже месяц бьюсь на этим, но никто не может ничего дельного сказать.
{RASkov} (2007-09-15 14:05:00) [21]> [0] TIF © (15.09.07 13:21)
Если я правильно понял, то можно так попробывать:
TForm1 = class(TForm)
.....
TabControl1: TTabControl;
procedure FormCreate(Sender: TObject);
private
OldWndProc: TWndMethod;
procedure NewWndProc(var Mes: TMessage);
public
{ Public declarations }
end;
................
procedure TForm1.FormCreate(Sender: TObject);
begin
OldWndProc:=TabControl1.WindowProc;
TabControl1.WindowProc:=NewWndProc;
end;
procedure TForm1.NewWndProc(var Mes: TMessage);
begin
if Mes.Msg=WM_KEYDOWN then begin
with TWMKey(Mes) do
if (CharCode=VK_LEFT) or (TWMKey(Mes).CharCode=VK_RIGHT) then CharCode:=0 else OldWndProc(Mes);
end else OldWndProc(Mes);
end;