⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frm_selectfields.pas

📁 一个地方税务征收管理系统
💻 PAS
字号:
unit FRM_SELECTFIELDS;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, dbgrideh, CheckLst, FlEdit;

type
  TSelectFields = class(TForm)
    BitBtn5: TSpeedButton;
    combobox1: TListBox;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    Label6: TLabel;
    Edit1: TEdit;
    BitBtn1: TBitBtn;
    Label8: TLabel;
    FloatEdit1: TFloatEdit;
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure combobox1Click(Sender: TObject);
  published
    SaveDialog1: TSaveDialog;
    OpenDialog1: TOpenDialog;
    ColorDialog1: TColorDialog;
    FontDialog1: TFontDialog;
    Label3: TLabel;
    Label4: TLabel;
    GroupBox2: TGroupBox;
    CheckListBox1: TCheckListBox;
    Label5: TLabel;
    Label2: TLabel;
    Label7: TLabel;
    procedure BitBtn2Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormShow(Sender: TObject);
    procedure Label4Click(Sender: TObject);

    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure Label2Click(Sender: TObject);
    procedure Label3Click(Sender: TObject);
    procedure Label6Click(Sender: TObject);
    procedure Label7Click(Sender: TObject);
    procedure loadfields;
    procedure FormCreate(Sender: TObject);

  private
    FDbgrideh: TDBGridEh;
    procedure SetDbgrideh(const Value: TDBGridEh);
    { Private declarations }
  public
    { Public declarations }
  published
    property Dbgrideh: TDBGridEh read FDbgrideh write SetDbgrideh;
  end;

var
  SelectFields: TSelectFields;

implementation

{$R *.DFM}

procedure TSelectFields.BitBtn3Click(Sender: TObject);
begin
end;

procedure TSelectFields.BitBtn4Click(Sender: TObject);
begin

end;

procedure TSelectFields.BitBtn5Click(Sender: TObject);
var
  i: integer;
  mcolumns: tcolumneh;
  m_display_list: TStringList;
begin
  m_display_list := TStringList.Create;
  with FDbgrideh do
  begin
    for i := 0 to Columns.Count - 1 do
    begin
      if not CheckListBox1.Checked[i] then
        Columns[i].Visible := False
      else
        Columns[i].Visible := true;
    end;
  end;
  loadfields;
end;

procedure TSelectFields.BitBtn1Click(Sender: TObject);
begin
  with SaveDialog1 do
  begin
    if (Execute and (FileName <> '')) then
    begin
      Fdbgrideh.Columns.SaveToFile(FileName + '.ds');
      MessageDlg('保存完成', mtWarning, [mbOK], 0);
    end;
  end;
end;

procedure TSelectFields.Label2Click(Sender: TObject);
begin
  if ColorDialog1.Execute then
  begin
    Label2.Color := ColorDialog1.Color;
  end;
end;

procedure TSelectFields.Label3Click(Sender: TObject);
begin
  with FontDialog1 do
  begin
    Font.Assign(Label3.Font);
    if Execute then
      Label3.Font.Assign(Font);
  end;
end;

procedure TSelectFields.Label6Click(Sender: TObject);
begin

end;

procedure TSelectFields.loadfields;
var
  i: integer;
begin
  ComboBox1.Items.Clear;
  with CheckListBox1 do
  begin
    Items.Clear;
    for i := 0 to Dbgrideh.Columns.Count - 1 do
    begin
      items.Add(Dbgrideh.Columns[i].FieldName);
      ComboBox1.Items.Add(Dbgrideh.Columns[i].FieldName);

      if Dbgrideh.Columns[i].Visible then
      begin
        Checked[i] := True;
      end
      else
        Checked[i] := false;
    end;
  end;
end;

procedure TSelectFields.Label7Click(Sender: TObject);
begin
  with FontDialog1 do
  begin
    Font.Assign(Label7.Font);
    if Execute then
      Label7.Font.Assign(Font);
  end;
end;

procedure TSelectFields.FormCreate(Sender: TObject);
begin
  OpenDialog1.InitialDir := ExtractFilePath(Application.ExeName);
  SaveDialog1.InitialDir := ExtractFilePath(Application.ExeName);
end;

procedure TSelectFields.BitBtn2Click(Sender: TObject);
begin
  with OpenDialog1 do
  begin
    if Execute and (FileName <> '') then
      Fdbgrideh.Columns.LoadFromFile(FileName);
  end;
end;

procedure TSelectFields.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
end;

procedure TSelectFields.FormShow(Sender: TObject);
begin
  loadfields;
end;

procedure TSelectFields.Label4Click(Sender: TObject);
begin
  if ColorDialog1.Execute then
  begin
    Label4.Color := ColorDialog1.Color;
  end;

end;

procedure TSelectFields.SetDbgrideh(const Value: TDBGridEh);
begin
  FDbgrideh := Value;
end;

procedure TSelectFields.SpeedButton1Click(Sender: TObject);
begin
  close;
end;

procedure TSelectFields.SpeedButton2Click(Sender: TObject);
var
  s: string;
  i: integer;
begin
  with Fdbgrideh do
  begin
    for i := 0 to combobox1.Items.Count - 1 do
    begin
      if combobox1.Selected[i] then
      begin
        Columns[i].Font.Assign(Label7.Font);
        Columns[i].Color := Label2.Color;
        Columns[i].Title.Color := Label4.Color;
        Columns[i].Title.Font.Assign(Label3.Font);
        Columns[i].DisplayFormat := Edit1.Text;
        //    Columns[i].Title.Caption := edit2.Text;
      end;
    end;
    FrozenCols := round(FloatEdit1.Value);

  end;
end;

procedure TSelectFields.SpeedButton3Click(Sender: TObject);
var
  s: string;
  i: integer;
begin
  with Fdbgrideh do
  begin
    for i := 0 to Columns.Count - 1 do
    begin
      Columns[i].Font.Assign(Label7.Font);
      Columns[i].Color := Label2.Color;
      Columns[i].Title.Color := Label4.Color;
      Columns[i].Title.Font.Assign(Label3.Font);
      Columns[i].DisplayFormat := Edit1.Text;
      //  Columns[i].Title.Caption := edit2.Text;
    end;
    FrozenCols := round(FloatEdit1.Value);
  end;
end;

procedure TSelectFields.combobox1Click(Sender: TObject);
var
  s: string;
  i: integer;
begin
  i := combobox1.Itemindex;
  if i < 0 then Exit;
  with Dbgrideh do
  begin
    Label7.Font.Assign(Columns[i].Font);
    Label2.Color := Columns[i].Color;
    Label4.Color := Columns[i].Title.Color;
    Label3.Font.assign(Columns[i].Title.Font);
    edit1.Text := Columns[i].DisplayFormat;
    //  edit2.Text := Columns[i].Title.Caption;
  end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -