Текущий архив: 2006.07.30;
Скачать: CL | DM;
Вниз
Наследник TStringGrid a Найти похожие ветки
← →
неважно (2006-06-12 17:04) [0]
procedure TForm1.StringGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
Windows.Beep(800,50);
end;
Пищит при нажатии.
Ладно,идем дальше...Делаем наследника от TStringGrid"a
TMyGrid = class (TStringGrid)
procedure KeyDown(var Key: Word; Shift: TShiftState);override;
...
end;
...
procedure TMyGrid.KeyDown(var Key: Word; Shift: TShiftState);
begin
Windows.Beep(800,50);
inherited;
end;
Пищит только на первой букве любой ячейки. Странно!!!
Вопрос : как ловить все нажатия клавиш в наследнике?
← →
Rial © (2006-06-12 19:05) [1]inherited KeyDown(Key,Shift);
← →
Юрий Зотов © (2006-06-12 20:44) [2]> Rial © (12.06.06 19:05) [1]
У Вас какая версия Delphi?
Впрочем, независимо от этого совет Ваш, извините, бесполезен.
> Наследник TStringGrid"a
Проверил. У меня оба грида работают одинаково.
← →
Rial © (2006-06-12 21:22) [3]
> Юрий Зотов © (12.06.06 20:44) [2]
>
> > Rial © (12.06.06 19:05) [1]
> У Вас какая версия Delphi?
Есть такая проблема...
D5.
> Проверил. У меня оба грида работают одинаково.
А я еще тупее поступил. Увидел то, что обычно сам не делаю,
проверил - работает. И всего то. Бесполезен - что ж, судьба такая.
← →
неважно (2006-06-12 22:01) [4]2 Rial © (12.06.06 19:05) [1]
Не помогло.
2 Юрий Зотов © (12.06.06 20:44) [2]
>У меня оба грида работают одинаково.
Ну и что делать? Не работает,блин. Кстати,версия как раз 5
← →
неважно (2006-06-12 22:48) [5]2 2 Юрий Зотов © (12.06.06 20:44) [2]
Проверил и в D7. Результат тот же :(
Может я что-то делаю не так???
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,Grids;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
//
TMyGrid = class(TStringGrid)
procedure KeyDown(var Key: Word; Shift: TShiftState); override;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
with TMyGrid.Create(Self) do
begin
Parent:=Self;
Height:=300;
Width:=500;
Options:=Options+[goEditing];
end;
end;
{ TMyGrid }
procedure TMyGrid.KeyDown(var Key: Word; Shift: TShiftState);
begin
inherited;
Windows.Beep(800,50);
end;
end.
← →
Leonid Troyanovsky © (2006-06-13 19:00) [6]
> неважно (12.06.06 22:48) [5]
> Может я что-то делаю не так???
Не очень понятно, что именно требуется, но, то,
что пищит лишь при первом нажатии вполне понятно,
бо, после оного фокус получает окно Editor, которое и
обрабатывает дальнейшие нажатия.
Т.е., если хочется больше звуков, то требуется заменить
editor на свой, с расширенной функциональностью. См., например,
http://groups.google.com/group/fido7.ru.delphi/msg/b7f75355f95bbd2b
--
Regards, LVT.
← →
неважно (2006-06-13 22:44) [7]2 Leonid Troyanovsky ©
>http://groups.google.com/group/fido7.ru.delphi/msg/b7f75355f95bbd2b
Это я видел...даже пользуюсь иногда ;)
З.Ы. Ладно,спасибо и на этом.
← →
Leonid Troyanovsky © (2006-06-14 06:56) [8]
> неважно (13.06.06 22:44) [7]
> >http://groups.google.com/group/fido7.ru.delphi/msg/b7f75355f95bbd2b
> Это я видел...даже пользуюсь иногда ;)
Чем-чем пользуешься?
--
Regards, LVT.
Страницы: 1 вся ветка
Текущий архив: 2006.07.30;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.033 c