Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
Delphi 8 Professional
|
Re: Stringgrid mit Enter ?
1. Sep 2003, 14:31
Zuerst muß ich mal von links nach rechts. Hier ist noch der Code aus dem alten Thread:
Delphi-Quellcode:
procedure EnterTab(Sender: TObject; var Key: Word; Shift: TShiftState;
ClassAus: array of TClass; ObjectAus: array of TObject;
bESC_Close: Boolean = True);
var
Mgs: TMsg;
function ClassObjectAusschliessen: Boolean;
var Index: Integer;
begin
Result := True;
with Sender as TForm do
begin
for Index := Low(ClassAus) to High(ClassAus) do
if ActiveControl is ClassAus[Index] then // Diese Classe ausschliessen
Exit;
for Index := Low(ObjectAus) to High(ObjectAus) do
if ActiveControl = ObjectAus[Index] then // Dieses Object ausschliessen
Exit;
end;
Result := False;
end;
begin
if Sender is TForm then
with Sender as TForm do
begin
case Key of
VK_RETURN, VK_TAB: if not ClassObjectAusschliessen then
begin
Key := 0;
Perform(WM_NextDlgCtl, ord(Shift = [ssShift]), 0);
PeekMessage(Mgs, 0, WM_CHAR, WM_CHAR, PM_REMOVE); // Beep-Ton ausschalten
end;
VK_ESCAPE: if bESC_Close and (Shift <> [ssShift]) then
begin
Key := 0;
Close;
PeekMessage(Mgs, 0, WM_CHAR, WM_CHAR, PM_REMOVE); // Beep-Ton ausschalten
end;
end // case
end; // für WITH Sender As TForm DO
end;
Gruß
Hansa
|
|
Zitat
|