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

📄 urepset.pas

📁 对初学票据套打开发的人很有帮助
💻 PAS
📖 第 1 页 / 共 2 页
字号:
                begin
                  reg.WriteInteger('Left', 0);
                  reg.WriteInteger('Top', 0);
                  reg.WriteInteger('OldLeft', ((rep.Controls[i] as TQRStringsBand).Controls[j] as TObject).Left);
                  reg.WriteInteger('OldTop', ((rep.Controls[i] as TQRStringsBand).Controls[j] as TObject).top);
                  if (rep.Controls[i] as TQRStringsBand).Controls[j] is Tqrlabel then
                  begin
                    reg.WriteString('Displayname', ((rep.Controls[i] as TQRStringsBand).Controls[j] as Tqrlabel).caption);
                    reg.WriteInteger('Zt', ((rep.Controls[i] as TQRStringsBand).Controls[j] as Tqrlabel).Font.Size);
                  end
                  else
                  begin
                    reg.WriteString('Displayname', '');
                    reg.WriteInteger('Zt', 9);
                  end;
                  reg.WriteBool('IsSave', false);
                  reg.WriteString('China', '');
                end;

            end
            else
            begin
              if Reg.OpenKey(section + '\' + (rep.Controls[i] as TObject).name, true) then
              begin
                reg.WriteInteger('Left', 0);
                reg.WriteInteger('Top', 0);
                reg.WriteInteger('OldLeft', (rep.Controls[i] as TObject).Left);
                reg.WriteInteger('OldTop', (rep.Controls[i] as TObject).top);
                reg.WriteInteger('Zt', 9);
                if rep.Controls[i] is Tqrlabel then
                begin
                  reg.WriteString('Displayname', (rep.Controls[i] as Tqrlabel).caption);
                  reg.WriteInteger('Zt', (rep.Controls[i] as Tqrlabel).Font.Size);
                end
                else
                begin
                  reg.WriteString('Displayname', '');
                  reg.WriteInteger('Zt', 9);
                end;
                reg.WriteBool('IsSave', false);
                reg.WriteString('China', '');
              end;
            end;
    end;
end;

procedure TFrm_RepSet.BitBtn5Click(Sender: TObject);
begin
  Panel3.Visible := false;
 // Panel2.Visible := true;
  GroupBox1.Enabled := true;
end;

procedure TFrm_RepSet.ListView1DblClick(Sender: TObject);
begin
  if ListView1.Selected = nil then exit;
//  edit1.text := ListView1.Selected.string1;
  edit2.text := ListView1.Items[ListView1.Selected.Index].SubItems.Strings[1];
  edit3.text := ListView1.Items[ListView1.Selected.Index].SubItems.Strings[2];
  ComboBox1.text := ListView1.Items[ListView1.Selected.Index].SubItems.Strings[3];
  edit4.text := ListView1.Items[ListView1.Selected.Index].SubItems.Strings[0];
  CheckBox1.Checked := ListView1.Items[ListView1.Selected.Index].SubItems.Strings[4] <> '';
  edit5.text := ListView1.Items[ListView1.Selected.Index].SubItems.Strings[5];
  Panel5.Visible := true;
  edit2.SetFocus;
end;

procedure TFrm_RepSet.BitBtn6Click(Sender: TObject);
var
  Reg: TRegistry;
  section: string;
  i, j: integer;
  selectname: string;
begin
  Reg := TRegistry.Create;
  Reg.RootKey := HKEY_CURRENT_USER;
 // selectname := ListView1.Selected.string1;
  section := '\Software\Gd\UserCustomSet\' + keyname + '\' + selectname;
  if Reg.OpenKey(section, false) then
  begin
    reg.WriteInteger('Left', strtoint(edit2.text));
    reg.WriteInteger('Top', strtoint(edit3.text));
    reg.WriteInteger('Zt', strtoint(ComboBox1.text));
    reg.WriteString('Displayname', edit4.text);
    reg.WriteString('China', edit5.text);
    if CheckBox1.Checked then
      reg.Writebool('IsSave', true)
    else
      reg.Writebool('IsSave', false);
  end;
  BitBtn1Click(sender);
  setwz(selectname);
  Panel5.Visible := false;
end;

procedure TFrm_RepSet.BitBtn7Click(Sender: TObject);
begin
  Panel5.Visible := false;
end;

procedure TFrm_RepSet.Add_pyl(left, top: integer); //添加偏移量
var
  Reg: TRegistry;
  section: string;
  i, j: integer;
begin
  keyname := 'rep' + no;
  Reg := TRegistry.Create;
  Reg.RootKey := HKEY_CURRENT_USER;
  section := '\Software\Gd\UserCustomSet\' + keyname;
  if Reg.OpenKey(section, true) then
    for i := 0 to rep.ControlCount - 1 do
    begin
      if rep.Controls[i] is TQRBand then
      begin
        for j := 0 to (rep.Controls[i] as TQRBand).ControlCount - 1 do
          if (rep.Controls[i] as TQRBand).Controls[j] is TObject then
            if Reg.OpenKey(section + '\' + ((rep.Controls[i] as TQRBand).Controls[j] as TObject).name, true) then
            begin
              reg.WriteInteger('Left', left);
              reg.WriteInteger('Top', top);
            end;
      end
      else
        if rep.Controls[i] is TQRChildBand then
        begin
          for j := 0 to (rep.Controls[i] as TQRChildBand).ControlCount - 1 do
            if Reg.OpenKey(section + '\' + ((rep.Controls[i] as TQRChildBand).Controls[j] as TObject).name, true) then
            begin
              reg.WriteInteger('Left', left);
              reg.WriteInteger('Top', top);
            end;
        end
        else
          if rep.Controls[i] is TQRsubdetail then
          begin
            for j := 0 to (rep.Controls[i] as TQRsubdetail).ControlCount - 1 do
              if Reg.OpenKey(section + '\' + ((rep.Controls[i] as TQRsubdetail).Controls[j] as TObject).name, true) then
              begin
                reg.WriteInteger('Left', left);
                reg.WriteInteger('Top', top);
              end;
          end
          else
            if rep.Controls[i] is TQRStringsBand then
            begin
              for j := 0 to (rep.Controls[i] as TQRStringsBand).ControlCount - 1 do
                if Reg.OpenKey(section + '\' + ((rep.Controls[i] as TQRStringsBand).Controls[j] as TObject).name, true) then
                begin
                  reg.WriteInteger('Left', left);
                  reg.WriteInteger('Top', top);
                end;
            end
            else
            begin
              if Reg.OpenKey(section + '\' + (rep.Controls[i] as TObject).name, true) then
              begin
                reg.WriteInteger('Left', left);
                reg.WriteInteger('Top', top);
              end;
            end;
    end;
end;

procedure TFrm_RepSet.BitBtn3Click(Sender: TObject);
begin
  rep.print;
end;

procedure TFrm_RepSet.ObjectMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin

end;

procedure TFrm_RepSet.setwz(objectname: string); //设置单独控间的位置
var
  i, j: integer;
  Reg: TRegistry;
  keyname, section: string;
begin
  keyname := 'rep' + no;
  Reg := TRegistry.Create;
  Reg.RootKey := HKEY_CURRENT_USER;
  section := '\Software\Gd\UserCustomSet\' + keyname;
  if Reg.OpenKey(section, false) then
  begin
    for i := 0 to rep.ControlCount - 1 do
    begin
      if rep.Controls[i] is TQRBand then
      begin
        for j := 0 to (rep.Controls[i] as TQRBand).ControlCount - 1 do
          if ((rep.Controls[i] as TQRBand).Controls[j] as TObject).Name = objectname then
            if Reg.OpenKey(section + '\' + ((rep.Controls[i] as TQRBand).Controls[j] as TObject).Name, false) then
            begin
              ((rep.Controls[i] as TQRBand).Controls[j] as TObject).Left := reg.ReadInteger('OldLeft') + reg.ReadInteger('Left');
              ((rep.Controls[i] as TQRBand).Controls[j] as TObject).top := reg.ReadInteger('OldTop') + reg.ReadInteger('Top');
              if (rep.Controls[i] as TQRBand).Controls[j] is TQRLabel then
              begin
                ((rep.Controls[i] as TQRBand).Controls[j] as TQRLabel).Font.Size := reg.ReadInteger('Zt');
                if reg.Readbool('IsSave') then
                  ((rep.Controls[i] as TQRBand).Controls[j] as TQRLabel).Caption := reg.ReadString('Displayname');
              end;
              if (rep.Controls[i] as TQRBand).Controls[j] is TQRDBText then
                ((rep.Controls[i] as TQRBand).Controls[j] as TQRDBText).Font.Size := reg.ReadInteger('Zt');
            end;
      end
      else
        if rep.Controls[i] is TQRChildBand then
        begin
          for j := 0 to (rep.Controls[i] as TQRChildBand).ControlCount - 1 do
            if ((rep.Controls[i] as TQRChildBand).Controls[j] as TObject).Name = objectname then
              if Reg.OpenKey(section + '\' + ((rep.Controls[i] as TQRChildBand).Controls[j] as TObject).Name, false) then
              begin
                ((rep.Controls[i] as TQRChildBand).Controls[j] as TObject).Left := reg.ReadInteger('OldLeft') + reg.ReadInteger('Left');
                ((rep.Controls[i] as TQRChildBand).Controls[j] as TObject).top := reg.ReadInteger('OldTop') + reg.ReadInteger('Top');
                if (rep.Controls[i] as TQRChildBand).Controls[j] is TQRLabel then
                begin
                  ((rep.Controls[i] as TQRChildBand).Controls[j] as TQRLabel).Font.Size := reg.ReadInteger('Zt');
                  if reg.Readbool('IsSave') then
                    ((rep.Controls[i] as TQRChildBand).Controls[j] as TQRLabel).Caption := reg.ReadString('Displayname');
                end;
                if (rep.Controls[i] as TQRChildBand).Controls[j] is TQRDBText then
                  ((rep.Controls[i] as TQRChildBand).Controls[j] as TQRDBText).Font.Size := reg.ReadInteger('Zt');
              end;
        end
        else
          if rep.Controls[i] is TQRsubdetail then
          begin
            for j := 0 to (rep.Controls[i] as TQRsubdetail).ControlCount - 1 do
              if ((rep.Controls[i] as TQRsubdetail).Controls[j] as TObject).Name = objectname then
                if Reg.OpenKey(section + '\' + ((rep.Controls[i] as TQRsubdetail).Controls[j] as TObject).Name, false) then
                begin
                  ((rep.Controls[i] as TQRsubdetail).Controls[j] as TObject).Left := reg.ReadInteger('OldLeft') + reg.ReadInteger('Left');
                  ((rep.Controls[i] as TQRsubdetail).Controls[j] as TObject).top := reg.ReadInteger('OldTop') + reg.ReadInteger('Top');
                  if (rep.Controls[i] as TQRsubdetail).Controls[j] is TQRLabel then
                  begin
                    ((rep.Controls[i] as TQRsubdetail).Controls[j] as TQRLabel).Font.Size := reg.ReadInteger('Zt');
                    if reg.Readbool('IsSave') then
                      ((rep.Controls[i] as TQRsubdetail).Controls[j] as TQRLabel).Caption := reg.ReadString('Displayname');
                  end;
                  if (rep.Controls[i] as TQRsubdetail).Controls[j] is TQRDBText then
                    ((rep.Controls[i] as TQRsubdetail).Controls[j] as TQRDBText).Font.Size := reg.ReadInteger('Zt');
                end;
          end
          else
            if rep.Controls[i] is TQRStringsBand then
            begin
              for j := 0 to (rep.Controls[i] as TQRStringsBand).ControlCount - 1 do
                if ((rep.Controls[i] as TQRStringsBand).Controls[j] as TObject).Name = objectname then
                  if Reg.OpenKey(section + '\' + ((rep.Controls[i] as TQRStringsBand).Controls[j] as TObject).Name, false) then
                  begin
                    ((rep.Controls[i] as TQRStringsBand).Controls[j] as TObject).Left := reg.ReadInteger('OldLeft') + reg.ReadInteger('Left');
                    ((rep.Controls[i] as TQRStringsBand).Controls[j] as TObject).top := reg.ReadInteger('OldTop') + reg.ReadInteger('Top');
                    if (rep.Controls[i] as TQRStringsBand).Controls[j] is TQRLabel then
                    begin
                      ((rep.Controls[i] as TQRStringsBand).Controls[j] as TQRLabel).Font.Size := reg.ReadInteger('Zt');
                      if reg.Readbool('IsSave') then
                        ((rep.Controls[i] as TQRStringsBand).Controls[j] as TQRLabel).Caption := reg.ReadString('Displayname');
                    end;
                    if (rep.Controls[i] as TQRStringsBand).Controls[j] is TQRDBText then
                      ((rep.Controls[i] as TQRStringsBand).Controls[j] as TQRDBText).Font.Size := reg.ReadInteger('Zt');
                  end;
            end
            else
            begin
              if (rep.Controls[i] as TObject).Name = objectname then
                if Reg.OpenKey(section + '\' + (rep.Controls[i] as TObject).Name, false) then
                begin
                  (rep.Controls[i] as TObject).Left := reg.ReadInteger('OldLeft') + reg.ReadInteger('Left');
                  (rep.Controls[i] as TObject).top := reg.ReadInteger('OldTop') + reg.ReadInteger('Top');
                  if rep.Controls[i] is TQRLabel then
                  begin
                    (rep.Controls[i] as TQRLabel).Font.Size := reg.ReadInteger('Zt');
                    if reg.Readbool('IsSave') then
                      (rep.Controls[i] as TQRLabel).Caption := reg.ReadString('Displayname');
                  end;
                  if rep.Controls[i] is TQRDBText then
                    (rep.Controls[i] as TQRDBText).Font.Size := reg.ReadInteger('Zt');
                end;
            end;
    end;
  end;
end;

procedure TFrm_RepSet.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
  if KEY in ['.', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-', #8] then
  else
    key := #0;
end;

procedure TFrm_RepSet.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
  if KEY in ['.', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-', #8] then
  else
    key := #0;
end;

procedure TFrm_RepSet.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
  if KEY in ['.', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-', #8] then
  else
    key := #0;
end;


function TFrm_RepSet.No: string;
var
  i, j, num: integer;
begin
  num := 0;
  for i := 0 to rep.ControlCount - 1 do
  begin
    if rep.Controls[i] is TQRBand then
    begin
      for j := 0 to (rep.Controls[i] as TQRBand).ControlCount - 1 do
        inc(num);
    end
    else
      if rep.Controls[i] is TQRChildBand then
      begin
        for j := 0 to (rep.Controls[i] as TQRChildBand).ControlCount - 1 do
          inc(num);
      end
      else
        if rep.Controls[i] is TQRsubdetail then
        begin
          for j := 0 to (rep.Controls[i] as TQRsubdetail).ControlCount - 1 do
            inc(num);
        end
        else
          if rep.Controls[i] is TQRStringsBand then
          begin
            for j := 0 to (rep.Controls[i] as TQRStringsBand).ControlCount - 1 do
              inc(num);
          end
          else
          begin
            inc(num);
          end;
  end;
  Result := inttostr(num);
end;

end.

⌨️ 快捷键说明

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