📄 frmdrawgridcellsetupunt.pas
字号:
begin
B := True;
FParam.Cells[I].ReadOnly := chkReadOnly.Checked;
end;
if chkVisible.Tag = 1 then
begin
B := True;
FParam.Cells[I].Visible := chkVisible.Checked;
end;
{ frame }
if cbBackColor.Tag = 1 then
begin
B := True;
FParam.Cells[I].Color := cbBackColor.Selected;
end;
end;
{ frame }
if dfpFrame.Tag = 1 then
begin
B := True;
vFrames := [];
if dfpFrame.LeftFrame then
vFrames := vFrames + [egfLeft];
if dfpFrame.TopFrame then
vFrames := vFrames + [egfTop];
if dfpFrame.RightFrame then
vFrames := vFrames + [egfRight];
if dfpFrame.BottomFrame then
vFrames := vFrames + [egfBottom];
if dfpFrame.HCenter then
vFrames := vFrames + [egfHorz];
if dfpFrame.VCenter then
vFrames := vFrames + [egfVert];
if dfpFrame.LeftDiagonal then
vFrames := vFrames + [egfLeftDiagonal];
if dfpFrame.RightDiagonal then
vFrames := vFrames + [egfRightDiagonal];
FParam.Grid.SetSelectedCellFrames(vFrames);
end;
if B then
ModalResult := IDOK
else
Close;
end;
procedure TfrmDrawGridCellSetup.cbBackColorChange(Sender: TObject);
begin
dfpFrame.Color := cbBackColor.Selected;
cbBackColor.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.dfpFrameMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
begin
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
end;
procedure TfrmDrawGridCellSetup.btnFrame_HorzCenterClick(Sender: TObject);
begin
dfpFrame.HCenter := not dfpFrame.HCenter;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_BottomClick(Sender: TObject);
begin
dfpFrame.BottomFrame := not dfpFrame.BottomFrame;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_LeftClick(Sender: TObject);
begin
dfpFrame.LeftFrame := not dfpFrame.LeftFrame;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_VertCenterClick(Sender: TObject);
begin
dfpFrame.VCenter := not dfpFrame.VCenter;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_RightClick(Sender: TObject);
begin
dfpFrame.RightFrame := not dfpFrame.RightFrame;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_ToLeftTopClick(Sender: TObject);
begin
dfpFrame.LeftDiagonal := not dfpFrame.LeftDiagonal;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_ToRightTopClick(Sender: TObject);
begin
dfpFrame.RightDiagonal := not dfpFrame.RightDiagonal;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_AllNullClick(Sender: TObject);
begin
dfpFrame.ClearAll;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_CrossClick(Sender: TObject);
begin
dfpFrame.HCenter := True;
dfpFrame.VCenter := True;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_OuterClick(Sender: TObject);
begin
dfpFrame.TopFrame := True;
dfpFrame.LeftFrame := True;
dfpFrame.BottomFrame := True;
dfpFrame.RightFrame := True;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnFrame_TopClick(Sender: TObject);
begin
dfpFrame.TopFrame := not dfpFrame.TopFrame;
UpdateFrameButtonDown;
dfpFrame.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.dtpDateMaxChange(Sender: TObject);
begin
dtpDateMax.Tag := 1;
if dtpDateMin.Date > dtpDateMax.Date then
begin
dtpDateMin.Date := dtpDateMax.Date;
dtpDateMin.Tag := 1;
end;
end;
procedure TfrmDrawGridCellSetup.dtpDateMinChange(Sender: TObject);
begin
dtpDateMax.Tag := 1;
if dtpDateMax.Date < dtpDateMin.Date then
begin
dtpDateMax.Date := dtpDateMin.Date;
dtpDateMax.Tag := 1;
end;
end;
procedure TfrmDrawGridCellSetup.btnImageOpenClick(Sender: TObject);
begin
if dlgOpenPicture.Execute then
begin
imgImagePic.Picture.LoadFromFile(dlgOpenPicture.FileName);
UpdateImagePic;
imgImagePic.Tag := 1;
end;
end;
procedure TfrmDrawGridCellSetup.UpdateImagePic;
var
vW, vH, vTmp: Integer;
vFloat: Double;
begin
if (imgImagePic.Picture.Width = 0) or (imgImagePic.Picture.Height = 0) then
begin
dpImagePic.Caption := '(无)';
Exit;
end
else begin
dpImagePic.Caption := '';
end;
case cboImageAlign.ItemIndex of
0: begin
imgImagePic.Align := alNone;
imgImagePic.Stretch := False;
vW := imgImagePic.Picture.Graphic.Width;
vH := imgImagePic.Picture.Graphic.Height;
imgImagePic.Width := vW;
imgImagePic.Height := vH;
imgImagePic.Left := Trunc((dpImagePic.Width - vW) / 2);
if imgImagePic.Left < 0 then
imgImagePic.Left := 0;
imgImagePic.Top := Trunc((dpImagePic.Height - vH) / 2);
if imgImagePic.Top < 0 then
imgImagePic.Top := 0;
end;
1: begin
imgImagePic.Align := alClient;
imgImagePic.Stretch := True;
end;
2: begin
imgImagePic.Align := alNone;
imgImagePic.Stretch := True;
vW := imgImagePic.Picture.Graphic.Width;
vH := imgImagePic.Picture.Graphic.Height;
if vW > cSImageWidth then
begin
vFloat := (cSImageWidth - vW) / vW;
vTmp := Trunc(vH * (1 + vFloat));
if vTmp > cSImageHeight then
begin
vFloat := (cSImageHeight - vH) / vH;
vTmp := Trunc(vW * (1 + vFloat));
vW := vTmp;
vH := cSImageHeight;
end
else begin
vW := cSImageWidth;
vH := vTmp;
end;
end
else if vH < cSImageHeight then
begin
vFloat := (cSImageHeight - vH) / vH;
vTmp := Trunc(vW * (1 + vFloat));
if vTmp > cSImageWidth then
begin
vFloat := (cSImageWidth - vW) / vW;
vTmp := Trunc(vH * (1 + vFloat));
vW := cSImageWidth;
vH := vTmp;
end
else begin
vW := vTmp;
vH := cSImageHeight;
end;
end;
imgImagePic.Width := vW;
imgImagePic.Height := vH;
imgImagePic.Left := Trunc((cSImageWidth - vW) / 2);
imgImagePic.Top := Trunc((cSImageHeight - vH) / 2);
end;
end;
end;
procedure TfrmDrawGridCellSetup.cboImageAlignChange(Sender: TObject);
begin
UpdateImagePic;
imgImagePic.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.imgImagePicDblClick(Sender: TObject);
begin
btnImageOpenClick(btnImageOpen);
end;
procedure TfrmDrawGridCellSetup.btnButtonPicClick(Sender: TObject);
begin
if dlgOpenPicture.Execute then
begin
UpdateButtonPic;
imgButtonPic.Tag := 1;
end;
end;
procedure TfrmDrawGridCellSetup.UpdateButtonPic;
var
vW, vH: Integer;
begin
if (imgButtonPic.Picture.Width = 0) or (imgButtonPic.Picture.Height = 0) then
begin
dpButtonPic.Caption := '(无)';
Exit;
end
else begin
dpButtonPic.Caption := '';
end;
imgButtonPic.Align := alNone;
vW := imgButtonPic.Picture.Graphic.Width;
vH := imgButtonPic.Picture.Graphic.Height;
if vW > cSImageWidth then
begin
vH := vH - Trunc(vH * (vW - cSImageWidth) / vW);
vW := cSImageWidth;
end
else if vW < cSImageWidth then
begin
vH := vH + Trunc(vH * (cSImageWidth - vW) / vW);
vW := cSImageWidth;
end;
if (vW <> cSImageWidth) or (vH > cSImageHeight) then
begin
if vH > cSImageHeight then
begin
vW := vW - Trunc(vW * (vH - cSImageHeight) / vH);
vH := cSImageHeight;
end
else if vH < cSImageHeight then
begin
vW := vW + Trunc(vW * (cSImageHeight - vH) / vH);
vH := cSImageHeight;
end;
end;
imgButtonPic.Width := vW;
imgButtonPic.Height := vH;
imgButtonPic.Left := Trunc((cSImageWidth - vW) / 2);
imgButtonPic.Top := Trunc((cSImageHeight - vH) / 2);
end;
procedure TfrmDrawGridCellSetup.imgButtonPicDblClick(Sender: TObject);
begin
btnButtonPicClick(btnButtonPic);
end;
procedure TfrmDrawGridCellSetup.dpButtonPicDblClick(Sender: TObject);
begin
btnButtonPicClick(btnButtonPic);
end;
procedure TfrmDrawGridCellSetup.dpImagePicDblClick(Sender: TObject);
begin
btnImageOpenClick(btnImageOpen);
end;
procedure TfrmDrawGridCellSetup.UpdateDecimalButtonEnable;
begin
edtDecimalLen.Enabled := not chkNumFree.Checked;
edtNumMax.Enabled := not chkNumFree.Checked;
edtNumMin.Enabled := not chkNumFree.Checked;
end;
procedure TfrmDrawGridCellSetup.chkNumFreeClick(Sender: TObject);
begin
UpdateDecimalButtonEnable;
chkNumFree.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.SpeedButton2Click(Sender: TObject);
begin
imgButtonPic.Picture.Assign(nil);
imgButtonPic.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.SpeedButton1Click(Sender: TObject);
begin
imgImagePic.Picture.Assign(nil);
imgImagePic.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.btnComboAdjustClick(Sender: TObject);
var
P: TEAPubMemoEditParam;
vStr: string;
begin
P.IsDelimited := True;
P.EditValue := cboComboValue.Items.DelimitedText;
P.Caption := '调整显示列表';
P.ReadOnly := False;
P.ShowStatus := False;
if ShowEAPubMemoEditDlg(P) then
begin
vStr := cboComboValue.Text;
cboComboValue.Items.DelimitedText := P.EditValue;
cboComboValue.ItemIndex := cboComboValue.Items.IndexOf(vStr);
cboComboValue.Tag := 1;
end;
end;
procedure TfrmDrawGridCellSetup.edtTextValueButtonClick(Sender: TObject;
ClickObject: TEAButtonClickObject);
var
P: TEAPubMemoEditParam;
begin
P.IsDelimited := False;
P.EditValue := edtTextValue.Text;
P.Caption := '显示值';
P.ReadOnly := False;
P.ShowStatus := False;
P.MaxLength := edtTextValue.MaxLength;
if ShowEAPubMemoEditDlg(P) then
begin
edtTextValue.Text := P.EditValue;
edtTextValue.Tag := 1;
end;
end;
procedure TfrmDrawGridCellSetup.edtButtonValueButtonClick(Sender: TObject;
ClickObject: TEAButtonClickObject);
var
P: TEAPubMemoEditParam;
begin
P.IsDelimited := False;
P.EditValue := edtButtonValue.Text;
P.Caption := '显示值';
P.ReadOnly := False;
P.ShowStatus := False;
P.MaxLength := edtButtonValue.MaxLength;
if ShowEAPubMemoEditDlg(P) then
begin
edtButtonValue.Text := P.EditValue;
edtButtonValue.Tag := 1;
end;
end;
procedure TfrmDrawGridCellSetup.lbStaticListDrawItem(Control: TWinControl;
Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
if odSelected in State then
begin
lbStaticList.Canvas.Font.Color := clWindow;
lbStaticList.Canvas.Brush.Color := clHighlight;
end
else begin
lbStaticList.Canvas.Font.Color := clWindowText;
lbStaticList.Canvas.Brush.Color := clWindow;
end;
lbStaticList.Canvas.FillRect(Rect);
ImgList.Draw(lbStaticList.Canvas, Rect.Left + 2, Rect.Top, cSTitleImg);
Rect.Left := Rect.Left + 20;
lbStaticList.Canvas.TextOut(Rect.Left, Rect.Top + 1, lbStaticList.Items[Index]);
end;
procedure TfrmDrawGridCellSetup.edtTextValueChange(Sender: TObject);
begin
edtTextValue.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.edtTextPrefixChange(Sender: TObject);
begin
edtTextPrefix.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.edtTextPostfixChange(Sender: TObject);
begin
edtTextPostfix.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.edtButtonValueChange(Sender: TObject);
begin
edtButtonValue.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.cboComboValueChange(Sender: TObject);
begin
cboComboValue.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.chkCheckValueClick(Sender: TObject);
begin
lbStaticList.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.cboDateFmtChange(Sender: TObject);
begin
cboDateFmt.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.edtDecimalLenChange(Sender: TObject);
begin
edtDecimalLen.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.edtNumMaxChange(Sender: TObject);
begin
edtNumMax.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.edtNumMinChange(Sender: TObject);
begin
edtNumMin.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.cboHAlignChange(Sender: TObject);
begin
cboHAlign.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.cboVAlignChange(Sender: TObject);
begin
cboVAlign.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.chkWordwrapClick(Sender: TObject);
begin
chkWordwrap.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.cboCheckValueChange(Sender: TObject);
begin
cboCheckValue.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.chkReadOnlyClick(Sender: TObject);
begin
chkReadOnly.Tag := 1;
end;
procedure TfrmDrawGridCellSetup.chkVisibleClick(Sender: TObject);
begin
chkVisible.Tag := 1;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -