Вниз
Скачать: CL | DM;

Как назначить клавишу Enter для DBCtrlGrid чтобы ShowModal?   Найти похожие ветки 

← →
Kadastr ©   (2003-06-04 10:33) [0]

Люди, Помогите! Кликом мыши по строке DBCtrlGrid перевожу ADOTable в режим редактирования, открываю модальную форму и произвожу изменения в строке таблицы. Клавишу Enter никак не могу под это дело приспособить... В Object Inspector в Events может что...

procedure TForm1.DBCtrlGrid1EditKeyPress(Sender: TObject; VAR KEY: Char);
begin
DataModule3.ADOTable1.Edit;
CASE Key OF
"t" : Form2.ShowModal;
end;
end.


← →
AlexSerp ©   (2003-06-04 10:44) [1]

Key = VK_RETURN


← →
Kadastr ©   (2003-06-04 11:12) [2]

А как и куда это дело прописать: Key = VK_RETURN ?


← →
Sandman25 ©   (2003-06-04 11:31) [3]

OnKeyDown


← →
Kadastr ©   (2003-06-04 12:03) [4]

Ставлю в OnKeyDown VK_RETURN, Enter работает, но и все стрелки курсора обращают к модальной форме, писать Условный оператор IF (Условие) THEN?


← →
Sandman25 ©   (2003-06-04 12:08) [5]

Да


← →
Kadastr ©   (2003-06-04 13:27) [6]

У кого нибудь есть такой оператор? Ничего у меня не выходит с IF THEN...


← →
AlexSerp ©   (2003-06-04 14:00) [7]

Дай свой код.


← →
Sandman25 ©   (2003-06-04 14:15) [8]

if Key = VK_RETURN then Form2.ShowModal;


← →
Kadastr ©   (2003-06-04 14:21) [9]

Кричит на THEN , что он " Not enough actual parameters "


← →
AlexSerp ©   (2003-06-04 14:25) [10]

Весь код дай.
THEN , что он " Not enough actual parameters " - него нет параметров. Не туда смотришь.


← →
Kadastr ©   (2003-06-04 14:30) [11]

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dbcgrids, StdCtrls, DBCtrls, DB, ADODB;

type
TForm1 = class(TForm)
DBCtrlGrid1: TDBCtrlGrid;
DBText1: TDBText;
DBText2: TDBText;
DBText3: TDBText;
procedure VK_RETURN(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

uses Unit2, Unit3;

{$R *.dfm}


procedure TForm1.VK_RETURN(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
IF Key = VK_RETURN then Form2.ShowModal;

end;

end.


← →
Sandman25 ©   (2003-06-04 14:36) [12]

Назовите процедуру иначе, не VK_RETURN :)


← →
AlexSerp ©   (2003-06-04 14:38) [13]

Зачем надо было процедуру создавать -
procedure VK_RETURN(Sender: TObject; var Key: Word;
Shift: TShiftState);

Надо было в OnKeyDown
IF Key = VK_RETURN then Form2.ShowModal;


← →
Sandman25 ©   (2003-06-04 14:47) [14]

AlexSerp © (04.06.03 14:38)

Я решил, что он так и сделал, но назвал обработчик VK_RETURN :)


← →
Kadastr ©   (2003-06-04 15:03) [15]

Заработало-о-о-о-о-о!!!

В Object Inspector в Events в OnKeyDown :
EditKeyPress

Огромное спасибо Sandman25 и AlexSepr!!!
Имя процедуры поменял... :)

Последний вариант:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dbcgrids, StdCtrls, DBCtrls, DB, ADODB;

type
TForm1 = class(TForm)
DBCtrlGrid1: TDBCtrlGrid;
DBText1: TDBText;
DBText2: TDBText;
DBText3: TDBText;
procedure EditKeyPress(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

uses Unit2, Unit3;

{$R *.dfm}


procedure TForm1.EditKeyPress(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
IF (key = VK_RETURN) then
begin
DataModule3.ADOTable1.Edit;
Form2.ShowModal;
end;
end;
end.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.011 c
1-97655
EugenePichugin
2003-06-19 15:56
2003.06.30
Вопрос по разработке интерфейса. Дайте совет.


11-97570
Serge_Blockirator
2002-10-21 13:34
2003.06.30
service


7-97905
ИгорьШШШ
2003-04-22 08:44
2003.06.30
Список всех пользователей


3-97509
Caponid
2003-06-05 13:55
2003.06.30
DBGrid - нужно работать с строками


6-97779
Beglec
2003-04-25 02:50
2003.06.30
Что есть пинг




   Наверх