📄 urepset.pas
字号:
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 + -