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

📄 fuqexport4xlseditor.pas

📁 Advanced.Export.Component.v4.01.rar,delphi 第三方控件
💻 PAS
📖 第 1 页 / 共 5 页
字号:
            tsXLSFill.PageIndex := 3;

            pcXLSCells.ActivePage :=
              pcXLSCells.Pages[FCellPageIndex];
            FCurrFormat := xlsCellFormat;
          end;
          xlsMergedCell: begin
            SetFormatsActivePage(tsMergedCellFormat);
            FCurrFormat := xlsMergedCellFormat;

            pcXLSMergedCells.ActivePage :=
              pcXLSMergedCells.Pages[FMergedCellPageIndex];
          end;
        end;
      end;
    end;
  end;

  AssignedData := Assigned(Item);

  if (pcFormats1.ActivePage = tsStandardFormat) or
     (pcFormats1.ActivePage = tsNoteFormat) or
     (pcFormats1.ActivePage = tsHyperlinkFormat) or
     (pcFormats1.ActivePage = tsCellFormat) then begin
    tsXLSFont.Enabled := AssignedData;
    laXLSFont.Enabled := AssignedData;
    cbXLSFont.Enabled := AssignedData;
    laXLSFontSize.Enabled := AssignedData;
    cbXLSFontSize.Enabled := AssignedData;
    btnFontColor.Enabled := AssignedData;
    pbFontColor.Enabled := AssignedData;
    btnFontBold.Enabled := AssignedData;
    btnFontItalic.Enabled := AssignedData;
    btnFontStrikeOut.Enabled := AssignedData;
    btnUnderlineSingle.Enabled := AssignedData;
    btnUnderlineSingleAccounting.Enabled := AssignedData;
    btnUnderlineDouble.Enabled := AssignedData;
    btnUnderlineDoubleAccounting.Enabled := AssignedData;
    btnHorizontalLeft.Enabled := AssignedData;
    btnHorizontalCenter.Enabled := AssignedData;
    btnHorizontalRight.Enabled := AssignedData;
    btnHorizontalFill.Enabled := AssignedData;
    btnVerticalTop.Enabled := AssignedData;
    btnVerticalCenter.Enabled := AssignedData;
    btnVerticalBottom.Enabled := AssignedData;
  end;

  if (pcFormats1.ActivePage = tsStandardFormat) or
     (pcFormats1.ActivePage = tsHyperlinkFormat) or
     (pcFormats1.ActivePage = tsCellFormat) then begin
    tsStandardFormat.Enabled := AssignedData;
    pcXLSDataFormat.Enabled := AssignedData;
    tsXLSBorders.Enabled := AssignedData;
    btnBorderTop.Enabled := AssignedData;
    cbBorderTop.Enabled := AssignedData;
    btnBorderTopColor.Enabled := AssignedData;
    pbBorderTop.Enabled := AssignedData;
    btnBorderBottom.Enabled := AssignedData;
    cbBorderBottom.Enabled := AssignedData;
    btnBorderBottomColor.Enabled := AssignedData;
    pbBorderBottom.Enabled := AssignedData;
    btnBorderLeft.Enabled := AssignedData;
    cbBorderLeft.Enabled := AssignedData;
    btnBorderLeftColor.Enabled := AssignedData;
    pbBorderLeft.Enabled := AssignedData;
    btnBorderRight.Enabled := AssignedData;
    cbBorderRight.Enabled := AssignedData;
    btnBorderRightColor.Enabled := AssignedData;
    pbBorderRight.Enabled := AssignedData;
    tsXLSFill.Enabled := AssignedData;
    btnFillBackground.Enabled := AssignedData;
    pbFillBackground.Enabled := AssignedData;
    cbPattern.Enabled := AssignedData;
    btnFillForeground.Enabled := AssignedData;
    pbFillForeground.Enabled := AssignedData;
    tsXLSAggregate.Enabled := AssignedData;
    rgXLSFunction.Enabled := AssignedData;
  end;

  if pcFormats1.ActivePage = tsNoteFormat then begin
    tsXLSNoteBase.Enabled := AssignedData;
    laXLSNoteCol.Enabled := AssignedData;
    edXLSNoteCol.Enabled := AssignedData;
    laXLSNoteRow.Enabled := AssignedData;
    edXLSNoteRow.Enabled := AssignedData;
    mmXLSNoteLines.Enabled := AssignedData;
    tsXLSNoteFill.Enabled := AssignedData;
    gbXLSNoteFillType.Enabled := AssignedData;
    rbXLSNoteFillSolid.Enabled := AssignedData;
    rbXLSNoteFillGradient.Enabled := AssignedData;
    rbXLSNoteGradientHorizontal.Enabled := AssignedData;
    rbXLSNoteGradientVertical.Enabled := AssignedData;
    rbXLSNoteGradientDiagonalUp.Enabled := AssignedData;
    rbXLSNoteGradientDiagonalDown.Enabled := AssignedData;
    rbXLSNoteGradientFromCorner.Enabled := AssignedData;
    rbXLSNoteGradientFromCenter.Enabled := AssignedData;
    laXLSNoteTransparencyStart.Enabled := AssignedData;
    laXLSNoteTransparency.Enabled := AssignedData;
    laXLSNoteTransparencyFinish.Enabled := AssignedData;
    bvXLSNoteFillColors.Enabled := AssignedData;
    btnXLSNoteBackgroundColor.Enabled := AssignedData;
    pbXLSNoteBackgroundColor.Enabled := AssignedData;
    btnXLSNoteForegroundColor.Enabled := AssignedData;
    pbXLSNoteForegroundColor.Enabled := AssignedData;
  end
  else if pcFormats1.ActivePage = tsHyperlinkFormat then begin
    pcXLSHyperlinks.Enabled := AssignedData;
    tsXLSHyperlinkBase.Enabled := AssignedData;
    laXLSHyperlinkCol.Enabled := AssignedData;
    edXLSHyperlinkCol.Enabled := AssignedData;
    laXLSHyperlinkRow.Enabled := AssignedData;
    edXLSHyperlinkRow.Enabled := AssignedData;
    rgXLSHyperlinkStyle.Enabled := AssignedData;
    laXLSHyperlinkTitle.Enabled := AssignedData;
    edXLSHyperlinkTitle.Enabled := AssignedData;
    laXLSHyperlinkTarget.Enabled := AssignedData;
    edXLSHyperlinkTarget.Enabled := AssignedData;
  end
  else if pcFormats1.ActivePage = tsChartFormat then begin
    pcXLSCharts.Enabled := AssignedData;
    tsXLSChartBase.Enabled := AssignedData;
    laXLSChartTitle.Enabled := AssignedData;
    edXLSChartTitle.Enabled := AssignedData;
    laXLSChartStyle.Enabled := AssignedData;
    cbXLSChartStyle.Enabled := AssignedData;
    rgXLSChartLegendPosition.Enabled := AssignedData;
    chXLSChartShowLegend.Enabled := AssignedData;
    chXLSChartAutoColor.Enabled := AssignedData;
    tsXLSChartPosition.Enabled := AssignedData;
    gbXLSChartPosition1.Enabled := AssignedData;
    rbXLSChartAutoPosition.Enabled := AssignedData;
    laXLSChartPlacement.Enabled := AssignedData;
    cbXLSChartPlacement.Enabled := AssignedData;
    rbXLSChartCustomPosition.Enabled := AssignedData;
    gbXLSChartPosition2.Enabled := AssignedData;
    laXLSChartLeft.Enabled := AssignedData;
    edXLSChartLeft.Enabled := AssignedData;
    laXLSChartTop.Enabled := AssignedData;
    edXLSChartTop.Enabled := AssignedData;
    laXLSChartHeight.Enabled := AssignedData;
    edXLSChartHeight.Enabled := AssignedData;
    laXLSChartWidth.Enabled := AssignedData;
    edXLSChartWidth.Enabled := AssignedData;
    tsXLSChartCategoryLabels.Enabled := AssignedData;
    rbXLSChartCategoryLabelColumn.Enabled := AssignedData;
    cbXLSChartCategoryLabelColumn.Enabled := AssignedData;
    rbXLSChartCategoryLabelCustom.Enabled := AssignedData;
    gbXLSChartCustomCategoryLabel.Enabled := AssignedData;
    laXLSChartCategoryLabelsCol1.Enabled := AssignedData;
    edXLSChartCategoryLabelsCol1.Enabled := AssignedData;
    laXLSChartCategoryLabelsCol2.Enabled := AssignedData;
    edXLSChartCategoryLabelsCol2.Enabled := AssignedData;
    laXLSChartCategoryLabelsRow1.Enabled := AssignedData;
    edXLSChartCategoryLabelsRow1.Enabled := AssignedData;
    laXLSChartCategoryLabelsRow2.Enabled := AssignedData;
    edXLSChartCategoryLabelsRow2.Enabled := AssignedData;
  end
  else if pcFormats1.ActivePage = tsSeriesFormat then begin
    pcXLSSeries.Enabled := AssignedData;
    tsXLSSeriesBase.Enabled := AssignedData;
    laXLSSeriesTitle.Enabled := AssignedData;
    edXLSSeriesTitle.Enabled := AssignedData;
    gbXLSSeriesDataRange.Enabled := AssignedData;
    rbXLSSeriesColumn.Enabled := AssignedData;
    cbXLSSeriesColumn.Enabled := AssignedData;
    rbXLSSeriesCustom.Enabled := AssignedData;
    laXLSSeriesDataRangeCol1.Enabled := AssignedData;
    edXLSSeriesDataRangeCol1.Enabled := AssignedData;
    laXLSSeriesDataRangeCol2.Enabled := AssignedData;
    edXLSSeriesDataRangeCol2.Enabled := AssignedData;
    laXLSSeriesDataRangeRow1.Enabled := AssignedData;
    edXLSSeriesDataRangeRow1.Enabled := AssignedData;
    laXLSSeriesDataRangeRow2.Enabled := AssignedData;
    edXLSSeriesDataRangeRow2.Enabled := AssignedData;
  end
  else if pcFormats1.ActivePage = tsCellFormat then begin
    pcXLSCells.Enabled := AssignedData;
    tsXLSCellBase.Enabled := AssignedData;
    laXLSCellCol.Enabled := AssignedData;
    edXLSCellCol.Enabled := AssignedData;
    laXLSCellRow.Enabled := AssignedData;
    edXLSCellRow.Enabled := AssignedData;
    laXLSCellType.Enabled := AssignedData;
    cbXLSCellType.Enabled := AssignedData;
    laXLSCellValue.Enabled := AssignedData;
    edXLSCellValue.Enabled := AssignedData;
    laXLSCellDateTimeFormat.Enabled := AssignedData;
    edXLSCellDateTimeFormat.Enabled := AssignedData;
    laXLSCellNumericFormat.Enabled := AssignedData;
    edXLSCellNumericFormat.Enabled := AssignedData;
  end
  else if pcFormats1.ActivePage = tsMergedCellFormat then begin
    pcXLSMergedCells.Enabled := AssignedData;
    tsXLSMergedCellBase.Enabled := AssignedData;
    laXLSMergedCellsFirstCol.Enabled := AssignedData;
    edXLSMergedCellsFirstCol.Enabled := AssignedData;
    laXLSMergedCellsFirstRow.Enabled := AssignedData;
    edXLSMergedCellsFirstRow.Enabled := AssignedData;
    laXLSMergedCellsLastCol.Enabled := AssignedData;
    edXLSMergedCellsLastCol.Enabled := AssignedData;
    laXLSMergedCellsLastRow.Enabled := AssignedData;
    edXLSMergedCellsLastRow.Enabled := AssignedData;
  end;

  if not AssignedData then Exit;

  if FCurrFormat in [xlsStandardFormat, xlsNoteFormat,
       xlsHyperlinkFormat, xlsChartFormat, xlsSeriesFormat,
       xlsCellFormat, xlsMergedCellFormat] then begin

    Fnt := GetCurrFont;
    Algn := GetCurrAlignment;
    Brdrs := GetCurrBorders;
    Fill := GetCurrFill;

    if Assigned(Fnt) then begin
      cbXLSFont.ItemIndex := cbXLSFont.Items.IndexOf(Fnt.Name);
      cbXLSFontSize.Text := IntToStr(Fnt.Size);

      pbFontColor.Repaint;
      btnFontBold.Down := xfsBold in Fnt.Style;
      btnFontItalic.Down := xfsItalic in Fnt.Style;
      btnFontStrikeOut.Down := xfsStrikeOut in Fnt.Style;

      btnUnderlineSingle.Down := Fnt.Underline = fulSingle;
      btnUnderlineSingleAccounting.Down := Fnt.Underline = fulSingleAccounting;
      btnUnderlineDouble.Down := Fnt.Underline = fulDouble;
      btnUnderlineDoubleAccounting.Down := Fnt.Underline = fulDoubleAccounting;
    end;

    if Assigned(Algn) then begin
      btnHorizontalLeft.Down := Algn.Horizontal = halLeft;
      btnHorizontalCenter.Down := Algn.Horizontal = halCenter;
      btnHorizontalRight.Down := Algn.Horizontal = halRight;
      btnHorizontalFill.Down := Algn.Horizontal = halFill;

      btnVerticalTop.Down := Algn.Vertical = valTop;
      btnVerticalCenter.Down := Algn.Vertical = valCenter;
      btnVerticalBottom.Down := Algn.Vertical = valBottom;
    end;

    if Assigned(Brdrs) then begin
      btnBorderTop.Down := Brdrs.Top.Style <> bstNone;
      cbBorderTop.ItemIndex := Integer(Brdrs.Top.Style);
      btnBorderBottom.Down := Brdrs.Bottom.Style <> bstNone;
      cbBorderBottom.ItemIndex := Integer(Brdrs.Bottom.Style);

      btnBorderLeft.Down := Brdrs.Left.Style <> bstNone;
      cbBorderLeft.ItemIndex := Integer(Brdrs.Left.Style);
      btnBorderRight.Down := Brdrs.Right.Style <> bstNone;
      cbBorderRight.ItemIndex := Integer(Brdrs.Right.Style);

      pbBorderTop.Repaint;
      pbBorderBottom.Repaint;
      pbBorderLeft.Repaint;
      pbBorderRight.Repaint;
    end;

    if Assigned(Fill) then begin
      cbPattern.ItemIndex := Integer(Fill.Pattern);
      pbFillBackground.Repaint;
      pbFillForeground.Repaint;
      cbPattern.Repaint;
    end;

    if tsXLSAggregate.TabVisible then begin
      Event := rgXLSFunction.OnClick;
      rgXLSFunction.OnClick := nil;
      rgXLSFunction.ItemIndex := Integer(TxlsFieldFormat(Item).Aggregate);
      rgXLSFunction.OnClick := Event;
    end
    else rgXLSFunction.ItemIndex := -1;

    case Item.ItemType of
      itNoteFormat: begin
        rbXLSNoteFillSolid.Checked :=
          TxlsNoteFormat(Item).FillType = nftSolid;
        rbXLSNoteFillGradient.Checked :=
          TxlsNoteFormat(Item).FillType = nftGradient;
        rbXLSNoteGradientHorizontal.Checked :=
          TxlsNoteFormat(Item).Gradient = ngrHorizontal;
        rbXLSNoteGradientVertical.Checked :=
          TxlsNoteFormat(Item).Gradient = ngrVertical;
        rbXLSNoteGradientDiagonalUp.Checked :=
          TxlsNoteFormat(Item).Gradient = ngrDiagonalUp;
        rbXLSNoteGradientDiagonalDown.Checked :=
          TxlsNoteFormat(Item).Gradient = ngrDiagonalDown;
        rbXLSNoteGradientFromCorner.Checked :=
          TxlsNoteFormat(Item).Gradient = ngrFromCorner;
        rbXLSNoteGradientFromCenter.Checked :=
          TxlsNoteFormat(Item).Gradient = ngrFromCenter;
        trXLSNoteTransparency.Position := TxlsNoteFormat(Item).Transparency;
      end;
      itHyperlink: begin
        edXLSHyperlinkCol.Text := IntToStr(TxlsHyperlink(Item).Col);
        edXLSHyperlinkRow.Text := IntToStr(TxlsHyperlink(Item).Row);
        rgXLSHyperlinkStyle.ItemIndex := Integer(TxlsHyperlink(Item).Style);
        edXLSHyperlinkTitle.Text := TxlsHyperlink(Item).Title;
        edXLSHyperlinkTarget.Text := TxlsHyperlink(Item).Target;
      end;
      itNote: begin
        edXLSNoteCol.Text := IntToStr(TxlsNote(Item).Col);
        edXLSNoteRow.Text := IntToStr(TxlsNote(Item).Row);
        mmXLSNoteLines.Lines.Text := TxlsNote(Item).Lines.Text;
        
        rbXLSNoteFillSolid.Checked :=
          TxlsNote(Item).Format.FillType = nftSolid;
        rbXLSNoteFillGradient.Checked :=
          TxlsNote(Item).Format.FillType = nftGradient;
        rbXLSNoteGradientHorizontal.Checked :=
          TxlsNote(Item).Format.Gradient = ngrHorizontal;
        rbXLSNoteGradientVertical.Checked :=
          TxlsNote(Item).Format.Gradient = ngrVertical;
        rbXLSNoteGradientDiagonalUp.Checked :=
          TxlsNote(Item).Format.Gradient = ngrDiagonalUp;
        rbXLSNoteGradientDiagonalDown.Checked :=
          TxlsNote(Item).Format.Gradient = ngrDiagonalDown;
        rbXLSNoteGradientFromCorner.Checked :=
          TxlsNote(Item).Format.Gradient = ngrFromCorner;
        rbXLSNoteGradientFromCenter.Checked :=
          TxlsNote(Item).Format.Gradient = ngrFromCenter;
        trXLSNoteTransparency.Position := TxlsNote(Item).Format.Transparency;
      end;
      itChart: begin
        edXLSChartTitle.Text := TxlsChart(Item).Title;
        cbXLSChartStyle.ItemIndex := Integer(TxlsChart(Item).Style);
        rgXLSChartLegendPosition.ItemIndex := Integer(TxlsChart(Item).LegendPlacement);
        chXLSChartShowLegend.Checked := TxlsChart(Item).ShowLegend;
        chXLSChartAutoColor.Checked := TxlsChart(Item).AutoColor;
        rbXLSChartAutoPosition.Checked := TxlsChart(Item).Position.PositionType = cptAuto;
        cbXLSChartPlacement.ItemIndex := Integer(TxlsChart(Item).Position.AutoPosition.Placement);
        rbXLSChartCustomPosition.Checked := TxlsChart(Item).Position.PositionType = cptCustom;
        rbXLSChartCategoryLabelColumn.Checked := TxlsChart(Item).CategoryLabelsType = rtColumn;
        i := cbXLSChartCategoryLabelColumn.Items.IndexOf(TxlsChart(Item).CategoryLabelsColumn);
        cbXLSChartCategoryLabelColumn.ItemIndex := i;

⌨️ 快捷键说明

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