base.pas
来自「进销存以及BOM管理,SQl Server数据库程序」· PAS 代码 · 共 74 行
PAS
74 行
unit Base;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, Mask, DBCtrls, Grids, DBGridEh;
type
TfrmBase = class(TForm)
procedure FormKeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
protected
function IsTEdit():Boolean; virtual;
function getscreenpoint(sender:Tcontrol):Tpoint;
public
{ Public declarations }
end;
var
frmBase: TfrmBase;
implementation
{$R *.dfm}
procedure TfrmBase.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
if IsTEdit then
begin
Key:= #0;
Perform(WM_NEXTDLGCTL,0,0);
end
else if (ActiveControl is TDBGridEH) then
begin
with TDBGrideh(ActiveControl) do
if selectedIndex < (FieldCount - 1) then
selectedIndex := selectedIndex + 1
else
selectedIndex := 0;
end;
end;
end;
function TfrmBase.IsTEdit: Boolean;
begin
if (ActiveControl is TCustomEdit) or
(ActiveControl is TCustomComboBox) or
(ActiveControl is TDateTimePicker) or
(ActiveControl is TEdit)
then Result:=True
else
Result:=False;
end;
function TfrmBase.getscreenpoint(sender: Tcontrol): Tpoint;
var
clientpoint:Tpoint;
begin
clientpoint:=point(0,sender.Height);
while sender.Parent<>nil do
begin
clientpoint:=point(sender.Left+clientpoint.X,sender.Top+clientpoint.Y);
sender:=sender.Parent;
end;
clientpoint:=sender.ClientToScreen(clientpoint);
Result:=clientpoint;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?