📄 printchartsetup.pas
字号:
unit PrintChartSetup;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, EditForm, KsHooks, KsForms, KsSkinForms, KsControls,
KsSpeedButtons, KsSkinSpeedButtons, KsGroupBoxs, KsSkinGroupBoxs,
KsButtons, KsSkinButtons, KsCheckBoxs, KsSkinCheckBoxs, KsEdits,
KsComboBoxs, KsSkinComboBoxs, KsLabels, KsSkinLabels, dxCntner, dxTL,
dxDBCtrl, dxDBGrid, dxEditor, dxExEdtr, dxEdLib;
type
TfrmPrintChartSetup = class(TfrmEditForm)
GroupBox1: TSeSkinGroupBox;
SB1: TSeSkinSpeedButton;
SB4: TSeSkinSpeedButton;
SB2: TSeSkinSpeedButton;
SB6: TSeSkinSpeedButton;
SB5: TSeSkinSpeedButton;
SB3: TSeSkinSpeedButton;
SB7: TSeSkinSpeedButton;
SB8: TSeSkinSpeedButton;
SB9: TSeSkinSpeedButton;
SB11: TSeSkinSpeedButton;
SB10: TSeSkinSpeedButton;
bbOk: TSeSkinButton;
bbNo: TSeSkinButton;
GroupBox2: TSeSkinGroupBox;
SeSkinLabel1: TSeSkinLabel;
SeSkinLabel2: TSeSkinLabel;
cbxName: TdxPickEdit;
cbxValue: TdxPickEdit;
cbxField: TdxPickEdit;
SeSkinLabel3: TSeSkinLabel;
procedure bbNoClick(Sender: TObject);
procedure bbOkClick(Sender: TObject);
private
{ Private declarations }
bReturn: Boolean;
lChart: Integer;
sPubName, sPubValue: string;
dxGrid: TCustomdxDBTreeListControl;
procedure MainShow;
procedure LoadData;
procedure SetButton(b: array of TSeSkinSpeedButton; n: Integer);
function GetButton(b: array of TSeSkinSpeedButton): Integer;
public
{ Public declarations }
end;
function PrintChartSetupShow(dxGrid1: TCustomdxDBTreeListControl; var lChart1:
Integer; var sField1, sField2: string): Boolean;
implementation
uses SysPublic;
{$R *.dfm}
function PrintChartSetupShow(dxGrid1: TCustomdxDBTreeListControl; var lChart1:
Integer; var sField1, sField2: string): Boolean;
var
frmPrintChartSetup: TfrmPrintChartSetup;
begin
frmPrintChartSetup := TfrmPrintChartSetup.Create(Application);
with frmPrintChartSetup do
begin
dxGrid := dxGrid1;
lChart := lChart1;
sPubName := sField1;
sPubValue := sField2;
MainShow;
lChart1 := lChart;
sField1 := sPubName;
sField2 := sPubValue;
Result := bReturn;
Free;
end;
end;
procedure TfrmPrintChartSetup.MainShow;
begin
bReturn := False;
LoadData;
ShowModal;
end;
procedure TfrmPrintChartSetup.LoadData;
begin
if (lChart < 0) and (lChart > 100) then
lChart := 0;
SetButton([SB1, SB2, SB3, SB4, SB5, SB6, SB7, SB8, SB9, SB10, SB11], lChart);
cbxName.Items.Text := GridNameToStrings(dxGrid, #13);
cbxValue.Items.Text := cbxName.Items.Text;
cbxField.Items.Text := GridFieldToStrings(dxGrid, #13);
if cbxName.Items.Count <> cbxField.Items.Count then //如果出错
begin
cbxName.Items.Text := '';
cbxValue.Items.Text := '';
end
else
begin
cbxName.ItemIndex := GetStringIndex(cbxField.Items, sPubName); //对应索引
cbxValue.ItemIndex := GetStringIndex(cbxField.Items, sPubValue);
end;
end;
procedure TfrmPrintChartSetup.SetButton(b: array of TSeSkinSpeedButton; n:
Integer);
begin
b[n].Down := True;
end;
function TfrmPrintChartSetup.GetButton(b: array of TSeSkinSpeedButton): Integer;
var
i: Integer;
begin
Result := 0;
for i := 0 to High(b) do
begin
if b[i].Down then
Result := i;
end;
end;
procedure TfrmPrintChartSetup.bbNoClick(Sender: TObject);
begin
inherited;
Close;
end;
procedure TfrmPrintChartSetup.bbOkClick(Sender: TObject);
begin
inherited;
bReturn := True;
lChart := GetButton([SB1, SB2, SB3, SB4, SB5, SB6, SB7, SB8, SB9, SB10,
SB11]);
sPubName := cbxField.Items.Strings[cbxName.ItemIndex];
sPubValue := cbxField.Items.Strings[cbxValue.ItemIndex];
Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -