![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перегрузка TCustomGrid.KeyDown
Бывший студент © (2005-04-07 17:47:00)Создаю компонент с предком TStringGrid. Необходимо добавлять/удалять строки в run-time кнопками Ins/Del. Делаю так:
.
.
protected
procedure TMyGrid.KeyDown(var Key: Word; Shift: TShiftState); reintroduce; overload;
.
implementation
procedure TMyGrid.KeyDown(var Key: Word; Shift: TShiftState);
case Key of
Key_Insert: RowCount:=RowCount+1;
Key_Delete: RowCount:=RowCount-1;
end;
end;
end.
Не работает. Что не так?
Бывший студент (2005-04-08 09:11:00) [1]1) Огромное спасибо за содействие - работает;
2) Key_xx - аналог VK из юнита Qt, используются в предке,
с ними компилируется, но не работает;
3) Видимо дело было ещё и в inherited.
Ещё раз спасибо.
Юрий Зотов (2005-04-08 03:19:00) [2]> Бывший студент © (08.04.05 00:37) [2]
> Не работает.
Странно, что вообще компилируется. Вместо того, чтобы обматериться на непонятные Key_xxx.
type
TMyGrid = class(TStringGrid)
protected
procedure KeyDown(var Key: Word; Shift: TShiftState); override;
end;
procedure TMyGrid.KeyDown(var Key: Word; Shift: TShiftState);
begin
case Key of
VK_INSERT:
RowCount := RowCount + 1;
VK_DELETE:
RowCount := RowCount - 1
else
inherited
end
end;
И ведь работает, однако.
Бывший студент (2005-04-08 00:37:00) [3].
.
protected
procedure KeyDown(var Key: Word; Shift: TShiftState); override;
.
implementation
procedure TMyGrid.KeyDown(var Key: Word; Shift: TShiftState);
inherited KeyDown(Key, Shift)
case Key of
Key_Insert: RowCount:=RowCount+1;
Key_Delete: RowCount:=RowCount-1;
end;
end;
end.
Не работает.
Юрий Зотов (2005-04-07 20:10:00) [4]procedure KeyDown(var Key: Word; Shift: TShiftState); override;