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

📄 skinprinter.pas

📁 DynamicSkinForm Finial 6.85_完全汉化版_for CB_D5-9 特点: 完全source 完全汉化真正奉献! 本汉化只供研究和学习用
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  begin
    Parent := PrinterGroupBox;
    Left := R.Left + 10;
    Top := R.Top + 10;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_NAME')
    else
      Caption := SP_PRNDLG_NAME;
  end;

  PrinterCombobox := TspSkinCombobox.Create(Form);
  with PrinterCombobox do
  begin
    Parent := PrinterGroupBox;
    DefaultFont := DefaultComboboxFont;
    UseSkinFont := Self.UseSkinFont;
    Items.Assign(Printer.Printers);
    ItemIndex := Printer.PrinterIndex;
    SkinDataName := FSelectSkinDataName;
    SkinData := CtrlSkinData;
    OnChange := PrinterComboBoxChange;
    Top := R.Top + 7;
    Left := R.Left + 80;
    Width := RectWidth(R) - 180;
   end;

  with TspSkinButton.Create(Self) do
  begin
    Parent := PrinterGroupBox;
    Left := PrinterCombobox.Left + PrinterCombobox.Width + 10;
    Top := R.Top + 5;
    Width := 80;
    DefaultFont := DefaultButtonFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_PROPERTIES')
    else
      Caption := SP_PRNDLG_PROPERTIES;
    OnClick := PropertiesButtonClick;
    TabStop := True;
  end;

  with TspSkinStdLabel.Create(Self) do
  begin
    Parent := PrinterGroupBox;
    Left := R.Left + 10;
    Top := R.Top + 40;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_STATUS')
    else
      Caption := SP_PRNDLG_STATUS;
  end;

  L1 := TspSkinStdLabel.Create(Self);
  with L1 do
  begin
    Parent := PrinterGroupBox;
    Left := R.Left + 80;
    Top := R.Top + 40;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    Caption := '';
  end;

  with TspSkinStdLabel.Create(Self) do
  begin
    Parent := PrinterGroupBox;
    Left := R.Left + 10;
    Top := R.Top + 60;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_TYPE')
    else
      Caption := SP_PRNDLG_TYPE;
  end;

  L2 := TspSkinStdLabel.Create(Self);
  with L2 do
  begin
    Parent := PrinterGroupBox;
    Left := R.Left + 80;
    Top := R.Top + 60;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    Caption := '';
  end;


  with TspSkinStdLabel.Create(Self) do
  begin
    Parent := PrinterGroupBox;
    Left := R.Left + 10;
    Top := R.Top + 80;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_WHERE')
    else
      Caption := SP_PRNDLG_WHERE;
  end;


  L3 := TspSkinStdLabel.Create(Self);
  with L3 do
  begin
    Parent := PrinterGroupBox;
    Left := R.Left + 80;
    Top := R.Top + 80;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    Caption := '';
  end;

  with TspSkinStdLabel.Create(Self) do
  begin
    Parent := PrinterGroupBox;
    Left := R.Left + 10;
    Top := R.Top + 100;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_COMMENT')
    else
      Caption := SP_PRNDLG_COMMENT;
  end;

  L4 := TspSkinStdLabel.Create(Self);
  with L4 do
  begin
    Parent := PrinterGroupBox;
    Left := R.Left + 80;
    Top := R.Top + 100;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    Caption := '';
  end;

  GetPrinterInfo(S1, S2, S3, S4);
  L1.Caption := S1;
  L2.Caption := S2;
  L3.Caption := S3;
  L4.Caption := S4;

  PaperGroupBox := TspSkinGroupBox.Create(Self);

  with PaperGroupBox do
  begin
    Parent := Form;
    Left := 10;
    Top := PrinterGroupBox.Top + PrinterGroupBox.Height + 10;
    Width := (Form.ClientWidth - 20) div 2 + 30;
    Height := 120;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_PAPER')
    else
      Caption := SP_PRNDLG_PAPER;
  end;

  OrientationGroupBox := TspSkinGroupBox.Create(Self);

  with OrientationGroupBox do
  begin
    Parent := Form;
    Left := PaperGroupBox.Left + PaperGroupBox.Width + 10;
    Top := PrinterGroupBox.Top + PrinterGroupBox.Height + 10;
    Width := (Form.ClientWidth - 20) div 2 - 40;
    Height := 120;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_ORIENTATION')
    else
      Caption := SP_PRNDLG_ORIENTATION;
  end;

  R := OrientationGroupBox.GetSkinClientRect;

  RBPortrait := TspSkinCheckRadioBox.Create(Self);
  with RBPortrait do
  begin
    GroupIndex := 1;
    Parent := OrientationGroupBox;
    Checked := Printer.Orientation = poPortrait;
    Left := R.Right - 100;
    Top := R.Top + 15;
    Width := 90;
    Radio := True;
    SkinDataName := 'radiobox';
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_PORTRAIT')
    else
      Caption := SP_PRNDLG_PORTRAIT;
    OnClick := RBPortraitClick;
    TabStop := True;
  end;

  RBLandScape := TspSkinCheckRadioBox.Create(Self);
  with RBLandScape do
  begin
    GroupIndex := 1;
    Parent := OrientationGroupBox;
    Checked := Printer.Orientation = poLandScape;
    Left := R.Right - 100;
    Top := R.Bottom - 45;
    Width := 90;
    Radio := True;
    SkinDataName := 'radiobox';
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_LANDSCAPE')
    else
      Caption := SP_PRNDLG_LANDSCAPE;
    OnClick := RBLandScapeClick;
    TabStop := True;
  end;

  OrientationImage := TImage.Create(Self);
  with OrientationImage do
  begin
    Top := R.Top + 30;
    Left := R.Left + 25;
    Parent := OrientationGroupBox;
    AutoSize := True;
    Transparent := True;
    if Printer.Orientation = poPortrait
    then
      Picture.Bitmap.LoadFromResourceName(HInstance, 'SP_PORTRAIT')
    else
      Picture.Bitmap.LoadFromResourceName(HInstance, 'SP_LANDSCAPE');
  end;

  with TspSkinStdLabel.Create(Self) do
  begin
    Parent := PaperGroupBox;
    Left := R.Left + 10;
    Top := R.Top + 20;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_SIZE')
    else
      Caption := SP_PRNDLG_SIZE;
  end;

  with TspSkinStdLabel.Create(Self) do
  begin
    Parent := PaperGroupBox;
    Left := R.Left + 10;
    Top := R.Top + 65;
    WordWrap := False;
    DefaultFont := DefaultLabelFont;
    UseSkinFont := Self.UseSkinFont;
    SkinData := CtrlSkinData;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('PRNDLG_SOURCE')
    else
      Caption := SP_PRNDLG_SOURCE;
  end;

  SizeComboBox := TspSkinCombobox.Create(Form);
  with SizeComboBox do
  begin
    Parent := PaperGroupBox;
    DefaultFont := DefaultComboboxFont;
    UseSkinFont := Self.UseSkinFont;
    SkinDataName := FSelectSkinDataName;
    SkinData := CtrlSkinData;
    Top := R.Top + 17;
    Left := R.Left + 65;
    Width := 170;
    OnChange := SizeComboBoxChange;
   end;

  SourceComboBox := TspSkinCombobox.Create(Form);
  with SourceComboBox do
  begin
    Parent := PaperGroupBox;
    DefaultFont := DefaultComboboxFont;
    UseSkinFont := Self.UseSkinFont;
    SkinDataName := FSelectSkinDataName;
    SkinData := CtrlSkinData;
    Top := R.Top + 60;
    Left := R.Left + 65;
    Width := 170;
    OnChange := SourceComboBoxChange;
   end;

  //
  LoadPapersAndBins;
  //

  with TspSkinButton.Create(Form) do
  begin
    Parent := Form;
    DefaultFont := DefaultButtonFont;
    UseSkinFont := Self.UseSkinFont;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('MSG_BTN_OK')
    else
      Caption := SP_MSG_BTN_OK;
    ModalResult := mrOk;
    Default := True;
    SetBounds(Form.ClientWidth - 160,
              OrientationGroupBox.Top + OrientationGroupBox.Height + 10,
              70, 25);
    DefaultHeight := 25;
    SkinDataName := FButtonSkinDataName;
    SkinData := CtrlSkinData;
    TabStop := True;
  end;

  with TspSkinButton.Create(Form) do
  begin
    Parent := Form;
    DefaultFont := DefaultButtonFont;
    UseSkinFont := Self.UseSkinFont;
    if (CtrlSkinData <> nil) and (CtrlSkinData.ResourceStrData <> nil)
    then
      Caption := CtrlSkinData.ResourceStrData.GetResStr('MSG_BTN_CANCEL')
    else
      Caption := SP_MSG_BTN_CANCEL;
    ModalResult := mrCancel;
    Cancel := True;
    SetBounds(Form.ClientWidth - 80,
              OrientationGroupBox.Top + OrientationGroupBox.Height + 10,
              70, 25);
    SkinDataName := FButtonSkinDataName;
    SkinData := CtrlSkinData;
    Form.ClientHeight := Top + Height + 10;
    TabStop := True;
  end;
 
  OldPrinterIndex := Printer.PrinterIndex;

  try
    if Form.ShowModal = mrOk
    then
      begin
        Result := True;
      end
    else
      begin
        RestoreDocumentProperties;
        if Printer.PrinterIndex <> OldPrinterIndex
        then
          Printer.PrinterIndex := OldPrinterIndex;
        Result := False;
      end;
  finally
    Form.Free;
  end;

end;

procedure TspSkinPrinterSetupDialog.Notification(AComponent: TComponent;
  Operation: TOperation);
begin
  inherited Notification(AComponent, Operation);
  if (Operation = opRemove) and (AComponent = FSD) then FSD := nil;
  if (Operation = opRemove) and (AComponent = FCtrlFSD) then FCtrlFSD := nil;
end;

procedure TspSkinPrinterSetupDialog.SetDefaultButtonFont(Value: TFont);
begin
  FDefaultButtonFont.Assign(Value);
end;

procedure TspSkinPrinterSetupDialog.SetDefaultLabelFont(Value: TFont);
begin
  FDefaultLabelFont.Assign(Value);
end;

procedure TspSkinPrinterSetupDialog.SetDefaultSelectFont(Value: TFont);
begin
  FDefaultSelectFont.Assign(Value);
end;

function TspSkinPrinterSetupDialog.GetTitle: string;
begin
  Result := FTitle;
end;

proc

⌨️ 快捷键说明

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