gxxg.~pas
来自「这是一个delphi源码」· ~PAS 代码 · 共 165 行
~PAS
165 行
unit GXXG;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, jpeg;
type
TGXXGForm = class(TForm)
LeftImage: TImage;
RightImage: TImage;
SelectedImage: TImage;
Image1: TImage;
Image2: TImage;
Image3: TImage;
Image4: TImage;
Image5: TImage;
Image6: TImage;
Image7: TImage;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Image1Click(Sender: TObject);
procedure Image7Click(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormShow(Sender: TObject);
private
CurItem:Integer;
SelImage:Array[1..6] of TImage;
procedure SelItem(ItemIndex:Integer);
procedure UnSelAll;
procedure NextItem;
procedure PriorItem;
procedure AgreeCurSel;
{ Private declarations }
public
{ Public declarations }
end;
var
GXXGForm: TGXXGForm;
implementation
uses Data, GXXZ;
{$R *.DFM}
procedure TGXXGForm.AgreeCurSel;
begin
Case CurItem of
1:DataMod.GXKDataSet.Filter:='XB=''男'' and ZS=2 and CANSHOW=''T''';
2:DataMod.GXKDataSet.Filter:='XB=''男'' and ZS=3 and CANSHOW=''T''';
3:DataMod.GXKDataSet.Filter:='XB=''女'' and ZS=2 and CANSHOW=''T''';
4:DataMod.GXKDataSet.Filter:='XB=''女'' and ZS=3 and CANSHOW=''T''';
5:DataMod.GXKDataSet.Filter:='SFYCZH=''T'' and CANSHOW=''T''';
// 6:DataMod.GXKDataSet.Filter:='not ((XB=''男'' and ZS=2) or (XB=''男'' and ZS=3) or (XB=''女'' and ZS=2) or (XB=''女'' and ZS=3) or (SFYCZH=''T'')) and CANSHOW=''T''';
6:DataMod.GXKDataSet.Filter:='ZS>3 and (SFYCZH=''F'' or SFYCZH is NULL) and CANSHOW=''T''';
end;
DataMod.GXKDataSet.Filtered:=true;
GXXZForm:=TGXXZForm.Create(self);
GXXZForm.ShowModal;
end;
procedure TGXXGForm.NextItem;
begin
SelItem(CurItem mod 6 +1);
end;
procedure TGXXGForm.PriorItem;
begin
SelItem((CurItem+4) mod 6 +1 );
end;
procedure TGXXGForm.UnSelAll;
begin
SelImage[1].Picture:=nil;
SelImage[2].Picture:=nil;
SelImage[3].Picture:=nil;
SelImage[4].Picture:=nil;
SelImage[5].Picture:=nil;
SelImage[6].Picture:=nil;
end;
procedure TGXXGForm.SelItem(ItemIndex:Integer);
begin
CurItem:=ItemIndex;
UnSelAll;
SelImage[CurItem].Canvas.CopyRect(SelImage[CurItem].ClientRect,SelectedImage.Canvas,Rect(SelImage[CurItem].Left-LeftImage.Width,SelImage[CurItem].Top,SelImage[CurItem].Left+SelImage[CurItem].Width-LeftImage.Width,SelImage[CurItem].Top+SelImage[CurItem].Height));
end;
procedure TGXXGForm.FormCreate(Sender: TObject);
begin
Top:=0;
Left:=0;
end;
procedure TGXXGForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TGXXGForm.Image1Click(Sender: TObject);
begin
SelItem(TImage(Sender).Tag);
AgreeCurSel;
end;
procedure TGXXGForm.Image7Click(Sender: TObject);
begin
Close;
end;
procedure TGXXGForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=VK_UP then
PriorItem;
if Key=VK_DOWN then
NextItem;
if (Key=$31) or (Key=VK_NUMPAD1) then
begin
SelItem(1);
AgreeCurSel;
end;
if (Key=$32) or (Key=VK_NUMPAD2) then
begin
SelItem(2);
AgreeCurSel;
end;
if (Key=$33) or (Key=VK_NUMPAD3) then
begin
SelItem(3);
AgreeCurSel;
end;
if (Key=$34) or (Key=VK_NUMPAD4) then
begin
SelItem(4);
AgreeCurSel;
end;
if (Key=$35) or (Key=VK_NUMPAD5) then
begin
SelItem(5);
AgreeCurSel;
end;
if (Key=$36) or (Key=VK_NUMPAD6) then
begin
SelItem(6);
AgreeCurSel;
end;
if (Key=72) then
AgreeCurSel;
if (Key=70) then
Close;
end;
procedure TGXXGForm.FormShow(Sender: TObject);
begin
SelImage[1]:=Image1;
SelImage[2]:=Image2;
SelImage[3]:=Image3;
SelImage[4]:=Image4;
SelImage[5]:=Image5;
SelImage[6]:=Image6;
SelItem(1);
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?