unit DUserInfoAgree; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Imaging.pngimage, Vcl.ExtCtrls, System.ImageList, Vcl.ImgList, PngImageList; type TDlgUserInfoAgree = class(TForm) imgMain: TImage; Label1: TLabel; lbDate: TLabel; Label2: TLabel; edName: TEdit; mmInfo: TMemo; chAgree: TCheckBox; edAgree: TEdit; imgBtnList: TPngImageList; imgOk: TImage; imgBtnList2: TPngImageList; imgClose: TImage; Shape1: TShape; procedure imgOkMouseEnter(Sender: TObject); procedure imgOkMouseLeave(Sender: TObject); procedure imgCloseMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure imgCloseMouseEnter(Sender: TObject); procedure imgCloseMouseLeave(Sender: TObject); procedure imgCloseMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure imgCloseClick(Sender: TObject); procedure imgOkClick(Sender: TObject); procedure chAgreeClick(Sender: TObject); procedure imgMainMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure edAgreeKeyPress(Sender: TObject; var Key: Char); private { Private declarations } procedure SetImgBtn(aImgList: TPngImageList; imgBtn: TImage; nImgIdx: Integer); public { Public declarations } Constructor Create(aOwner: TComponent); override; procedure CreateParams(var Params: TCreateParams); override; end; var DlgUserInfoAgree: TDlgUserInfoAgree; implementation uses ProcessParam, DefineHelper; {$R *.dfm} Constructor TDlgUserInfoAgree.Create(aOwner: TComponent); begin Inherited Create(aOwner); SetImgBtn(imgBtnList, imgOk, 0); SetImgBtn(imgBtnList2, imgClose, 0); lbDate.Caption := DateTimeToStr(Now); Application.Title := Caption; end; procedure TDlgUserInfoAgree.CreateParams(var Params: TCreateParams); begin inherited CreateParams(Params); // Params.ExStyle := WS_EX_APPWINDOW; // Params.WndParent := GetDesktopWindow; Params.WindowClass.Style := Params.WindowClass.Style or CS_DROPSHADOW; end; procedure TDlgUserInfoAgree.edAgreeKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin if imgOk.Enabled then imgOkClick(nil); Key := #0; end; end; procedure TDlgUserInfoAgree.SetImgBtn(aImgList: TPngImageList; imgBtn: TImage; nImgIdx: Integer); begin aImgList.GetIcon(nImgIdx, imgBtn.Picture.Icon); imgBtn.Repaint end; procedure TDlgUserInfoAgree.chAgreeClick(Sender: TObject); begin imgOk.Enabled := chAgree.Checked; end; procedure TDlgUserInfoAgree.imgCloseClick(Sender: TObject); begin ModalResult := mrCancel; end; procedure TDlgUserInfoAgree.imgCloseMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin SetImgBtn(imgBtnList2, imgClose, 2); end; procedure TDlgUserInfoAgree.imgCloseMouseEnter(Sender: TObject); begin SetImgBtn(imgBtnList2, imgClose, 1); end; procedure TDlgUserInfoAgree.imgCloseMouseLeave(Sender: TObject); begin SetImgBtn(imgBtnList2, imgClose, 0); end; procedure TDlgUserInfoAgree.imgCloseMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin imgCloseMouseEnter(Sender); end; procedure TDlgUserInfoAgree.imgMainMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin ReleaseCapture; SendMessage(Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0); end; procedure TDlgUserInfoAgree.imgOkClick(Sender: TObject); begin edName.Text := Trim(edName.Text); edAgree.Text := Trim(edAgree.Text); if edName.Text = '' then begin MessageBox(Handle, PChar('이름을 입력해 주십시오.'), PChar(Caption), MB_ICONWARNING or MB_OK); edName.SetFocus; exit; end; if (edAgree.Text <> '동의합니다') and (edAgree.Text <> '동의합니다.') then begin MessageBox(Handle, PChar('"동의합니다"를 입력해 주십시오.'), PChar(Caption), MB_ICONWARNING or MB_OK); edAgree.SetFocus; exit; end; gParam.SendData(HPCMD_PERSONALINFO_AGREE, ''); Close; // ModalResult := mrOk; end; procedure TDlgUserInfoAgree.imgOkMouseEnter(Sender: TObject); begin if chAgree.Checked then SetImgBtn(imgBtnList, imgOk, 1); end; procedure TDlgUserInfoAgree.imgOkMouseLeave(Sender: TObject); begin SetImgBtn(imgBtnList, imgOk, 0); end; end.