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

📄 rm_dsggridreport.pas

📁 这是一个功能强大
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  i, liOffset: Integer;
begin
  inherited Create(AOwner);

  Visible := False;
//  BeginUpdate;
  Dockedto := DockTo;
  FPageEditor := TRMGridReportPageEditor(AOwner);
  DockRow := 1;
  DockPos := 0;
  Name := 'GridReport_ToolbarEdit';
  CloseButton := False;
  ParentForm := FPageEditor.FDesignerForm;

  FcmbFont := TRMFontComboBox.Create(Self);
  with FcmbFont do
  begin
    Parent := Self;
    Height := 21;
    Width := 120;
    //      Device := rmfdBoth;
    TrueTypeOnly := True;
    Tag := TAG_SetFontName;
    OnChange := FPageEditor.FDesignerForm.DoClick;
  end;
  FcmbFontSize := TRMComboBox97 {TComboBox}.Create(Self);
  with FcmbFontSize do
  begin
    Parent := Self;
    Height := 21;
    Width := 50;
    DropDownCount := 12;
    if RMIsChineseGB then
      liOffset := 0
    else
      liOffset := 13;
    for i := Low(RMDefaultFontSizeStr) + liOffset to High(RMDefaultFontSizeStr) do
      Items.Add(RMDefaultFontSizeStr[i]);
    Tag := TAG_SetFontSize;
    OnChange := FPageEditor.FDesignerForm.DoClick;
  end;
  ToolbarSep971 := TRMToolbarSep.Create(Self);
  with ToolbarSep971 do
  begin
    AddTo := Self;
  end;

  btnFontBold := TRMToolbarButton.Create(Self);
  with btnFontBold do
  begin
    Tag := 0;
    AllowAllUp := True;
    GroupIndex := 1;
    ImageIndex := 0;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_FontBold;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;
  btnFontItalic := TRMToolbarButton.Create(Self);
  with btnFontItalic do
  begin
    Tag := 1;
    AllowAllUp := True;
    GroupIndex := 2;
    ImageIndex := 1;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_FontItalic;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;
  btnFontUnderline := TRMToolbarButton.Create(Self);
  with btnFontUnderline do
  begin
    Tag := 2;
    AllowAllUp := True;
    GroupIndex := 3;
    ImageIndex := 2;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_FontUnderline;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;
  ToolbarSep972 := TRMToolbarSep.Create(Self);
  with ToolbarSep972 do
  begin
    AddTo := Self;
  end;

  FBtnFontColor := TRMColorPickerButton.Create(Self);
  with FBtnFontColor do
  begin
    Tag := TAG_FontColor;
    Parent := Self;
    ParentShowHint := True;
    ColorType := rmptFont;
    OnColorChange := FPageEditor.FDesignerForm.DoClick;
  end;
  FBtnBackColor := TRMColorPickerButton.Create(Self);
  with FBtnBackColor do
  begin
    Parent := Self;
    Tag := TAG_BackColor;
    ParentShowHint := True;
    ColorType := rmptFill;
    OnColorChange := FPageEditor.FDesignerForm.DoClick;
  end;
  FBtnFrameColor := TRMColorPickerButton.Create(Self);
  with FBtnFrameColor do
  begin
    Parent := Self;
    Tag := TAG_FrameColor;
    ParentShowHint := True;
    ColorType := rmptLine; //rmptHighlight;
    OnColorChange := FPageEditor.FDesignerForm.DoClick;
  end;
  FCmbFrameWidth := TRMComboBox97.Create(Self);
  with FCmbFrameWidth do
  begin
    Parent := Self;
    Width := 44;
    Tag := TAG_FrameSize;
    DropDownCount := 14;
    Items.Add('0.1');
    Items.Add('0.5');
    Items.Add('1');
    Items.Add('1.5');
    for i := 2 to 10 do
      Items.Add(IntToStr(i));

    OnClick := FPageEditor.FDesignerForm.DoClick;
  end;
  ToolbarSep973 := TRMToolbarSep.Create(Self);
  with ToolbarSep973 do
  begin
    AddTo := Self;
  end;

  FBtnHighlight := TRMToolbarButton.Create(Self);
  with FBtnHighlight do
  begin
    ImageIndex := 3;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    OnClick := BtnHighlightClick;
    AddTo := Self;
  end;
  ToolbarSep975 := TRMToolbarSep.Create(Self);
  with ToolbarSep975 do
  begin
    AddTo := Self;
  end;

  btnHLeft := TRMToolbarButton.Create(Self);
  with btnHLeft do
  begin
    GroupIndex := 4;
    ImageIndex := 4;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_HAlignLeft;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;
  btnHCenter := TRMToolbarButton.Create(Self);
  with btnHCenter do
  begin
    GroupIndex := 4;
    ImageIndex := 5;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_HAlignCenter;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;
  btnHRight := TRMToolbarButton.Create(Self);
  with btnHRight do
  begin
    GroupIndex := 4;
    ImageIndex := 6;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_HAlignRight;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;
  btnHSpaceEqual := TRMToolbarButton.Create(Self);
  with btnHSpaceEqual do
  begin
    GroupIndex := 4;
    ImageIndex := 7;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_HAlignEuqal;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;
  ToolbarSep974 := TRMToolbarSep.Create(Self);
  with ToolbarSep974 do
  begin
    AddTo := Self;
  end;

  btnVTop := TRMToolbarButton.Create(Self);
  with btnVTop do
  begin
    GroupIndex := 6;
    ImageIndex := 8;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_VAlignTop;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;
  btnVCenter := TRMToolbarButton.Create(Self);
  with btnVCenter do
  begin
    GroupIndex := 6;
    ImageIndex := 9;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_VAlignCenter;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;
  btnVBottom := TRMToolbarButton.Create(Self);
  with btnVBottom do
  begin
    GroupIndex := 6;
    ImageIndex := 10;
    Images := FPageEditor.FDesignerForm.ImageListFont;
    Tag := TAG_VAlignBottom;
    OnClick := FPageEditor.FDesignerForm.DoClick;
    AddTo := Self;
  end;

//  EndUpdate;
  Localize;
end;

procedure TRMToolbarEdit.Localize;
begin
  RMSetStrProp(Self, 'Caption', rmRes + 082);
  RMSetStrProp(btnFontBold, 'Hint', rmRes + 115);
  RMSetStrProp(btnFontItalic, 'Hint', rmRes + 116);
  RMSetStrProp(btnFontUnderline, 'Hint', rmRes + 117);
  RMSetStrProp(btnHLeft, 'Hint', rmRes + 107);
  RMSetStrProp(btnHCenter, 'Hint', rmRes + 109);
  RMSetStrProp(btnHRight, 'Hint', rmRes + 108);
  RMSetStrProp(btnHSpaceEqual, 'Hint', rmRes + 114);
  RMSetStrProp(btnVTop, 'Hint', rmRes + 112);
  RMSetStrProp(btnVCenter, 'Hint', rmRes + 111);
  RMSetStrProp(btnVBottom, 'Hint', rmRes + 113);
  RMSetStrProp(FBtnFontColor, 'Hint', rmRes + 208);
  RMSetStrProp(FBtnFrameColor, 'Hint', rmRes + 210);
  RMSetStrProp(FBtnBackColor, 'Hint', rmRes + 209);
  RMSetStrProp(FCmbFrameWidth, 'Hint', rmRes + 194);
  RMSetStrProp(FBtnHighlight, 'Hint', rmRes + 119);
end;

procedure TRMToolbarEdit.BtnHighlightClick(Sender: TObject);
var
  t: TRMView;
  tmp: TRMHilightForm;
begin
  t := FPageEditor.FDesignerForm.PageObjects[FPageEditor.FDesignerForm.TopSelected];
  if t = nil then Exit;
  if not (t is TRMCustomMemoView) then Exit;

  tmp := TRMHilightForm.Create(nil);
  try
    tmp.ShowEditor(t);
  finally
    tmp.Free;
  end;
end;

{------------------------------------------------------------------------------}
{------------------------------------------------------------------------------}
{ TRMToolbarGrid }

constructor TRMToolbarGrid.CreateAndDock(AOwner: TComponent; DockTo: TRMDock);
begin
  inherited Create(AOwner);
  Visible := False;
//  BeginUpdate;
  Dockedto := DockTo;
  FPageEditor := TRMGridReportPageEditor(AOwner);
  DockRow := 3;
  DockPos := 0;
  Name := 'GridReport_ToolbarGrid';
  CloseButton := False;
  ParentForm := FPageEditor.FDesignerForm;

  btnInsertColumn := TRMToolbarButton.Create(Self);
  with btnInsertColumn do
  begin
    ImageIndex := 29;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := FPageEditor.itmInsertLeftColumnClick;
    AddTo := Self;
  end;
  btnInsertRow := TRMToolbarButton.Create(Self);
  with btnInsertRow do
  begin
    ImageIndex := 30;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := FPageEditor.itmInsertTopRowClick;
    AddTo := Self;
  end;
  btnAddColumn := TRMToolbarButton.Create(Self);
  with btnAddColumn do
  begin
    ImageIndex := 31;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := OnAddColumnClick;
    AddTo := Self;
  end;
  btnAddRow := TRMToolbarButton.Create(Self);
  with btnAddRow do
  begin
    ImageIndex := 32;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := OnAddRowClick;
    AddTo := Self;
  end;
  ToolbarSep1 := TRMToolbarSep.Create(Self);
  with ToolbarSep1 do
  begin
    AddTo := Self;
  end;

  btnDeleteColumn := TRMToolbarButton.Create(Self);
  with btnDeleteColumn do
  begin
    ImageIndex := 33;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := FPageEditor.itmDeleteColumnClick;
    AddTo := Self;
  end;
  btnDeleteRow := TRMToolbarButton.Create(Self);
  with btnDeleteRow do
  begin
    ImageIndex := 34;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := FPageEditor.itmDeleteRowClick;
    AddTo := Self;
  end;
  btnSetRowsAndColumns := TRMToolbarButton.Create(Self);
  with btnSetRowsAndColumns do
  begin
    ImageIndex := 39;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := OnBtnSetRowsAndColumnsClick;
    AddTo := Self;
  end;
  ToolbarSep2 := TRMToolbarSep.Create(Self);
  with ToolbarSep2 do
  begin
    AddTo := Self;
  end;

  btnMerge := TRMToolbarButton.Create(Self);
  with btnMerge do
  begin
    ImageIndex := 35;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := FPageEditor.btnMergeClick;
    AddTo := Self;
  end;
  btnSplit := TRMToolbarButton.Create(Self);
  with btnSplit do
  begin
    ImageIndex := 36;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := FPageEditor.btnSplitClick;
    AddTo := Self;
  end;
  btnMergeColumn := TRMToolbarButton.Create(Self);
  with btnMergeColumn do
  begin
    ImageIndex := 37;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := OnMergeColumnClick;
    AddTo := Self;
  end;
  btnMergeRow := TRMToolbarButton.Create(Self);
  with btnMergeRow do
  begin
    ImageIndex := 38;
    Images := FPageEditor.FDesignerForm.ImageListStand;
    OnClick := OnMergeRowClick;
    AddTo := Self;
  end;

//  EndUpdate;
  Localize;
end;

procedure TRMToolbarGrid.Localize;
begin
  RMSetStrProp(Self, 'Caption', rmRes + 244);
  RMSetStrProp(btnInsertColumn, 'Hint', rmRes + 236);
  RMSetStrProp(btnInsertRow, 'Hint', rmRes + 237);
  RMSetStrProp(btnAddColumn, 'Hint', rmRes + 238);
  RMSetStrProp(btnAddRow, 'Hint', rmRes + 239);
  RMSetStrProp(btnDeleteColumn, 'Hint', rmRes + 240);
  RMSetStrProp(btnDeleteRow, 'Hint', rmRes + 241);
  RMSetStrProp(btnMerge, 'Hint', rmRes + 805);
  RMSetStrProp(btnSplit, 'Hint', rmRes + 806);
  RMSetStrProp(btnMergeColumn, 'Hint', rmRes + 242);
  RMSetStrProp(btnMergeRow, 'Hint', rmRes + 243);
  RMSetStrProp(btnSetRowsAndColumns, 'Hint', rmRes + 693);
end;

procedure TRMToolbarGrid.OnAddColumnClick(Sender: TObject);
begin
  FPageEditor.Editor_AddUndoAction(rmacChangeGrid);
  FPageEditor.FDesignerForm.Modified := True;
  FPageEditor.FGrid.ColCount := FPageEditor.FGrid.ColCount + 1;
end;

procedure TRMToolbarGrid.OnAddRowClick(Sender: TObject);
begin
  FPageEditor.Editor_AddUndoAction(rmacChangeGrid);
  FPageEditor.FDesignerForm.Modified := True;
  FPageEditor.FGrid.RowCount := FPageEditor.FGrid.RowCount + 1;
end;

procedure TRMToolbarGrid.OnMergeColumnClick(Sender: TObject);
var
  i: Integer;
  lRect: TRect;
begin
  FPageEditor.FDesignerForm.Modified := True;
  lRect := FPageEditor.FGrid.Selection;
  for i := lRect.Left to lRect.Right do
  begin

⌨️ 快捷键说明

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