Avatar billede anna Nybegynder
24. oktober 2000 - 20:36 Der er 6 kommentarer

Delphi 5 & Word 2000

Hvordan laver man et delpi 5, program der opretter et Word 2000 Dok.

Jeg skal styre tekst og fonts i Word 2000.

Hilsen
@nne
Avatar billede gummiand Nybegynder
24. oktober 2000 - 21:33 #1
Der følger et eksempel med delphi:
C:\\Programmer\\Borland\\Delphi5\\Demos\\Activex\\Oleauto\\Word8
Avatar billede sjensen Nybegynder
25. oktober 2000 - 00:21 #2
I delphi 5 er der en række komponenter du kan bruge, og som eksemplet som gummiand henviser til også bruger, men du kan også tage et kig på TurboPowers \"MS Office\" komponenter, der er væsentligt bedre (og lettere) at bruge end Borlands. Tilgengæld koster de desværre også.

Men tag evt. et kig på www.turbopower.com
Avatar billede gummiand Nybegynder
25. oktober 2000 - 07:31 #3
En lidt mere tricky metode hvor du slipper for delphis word-komponenter:

Lav dit dokument som en TRichedit.
Lav en Quickreport der kun indeholder et titleband men en TQRRichText. Læg dit dokument i den og eksporter rapporten med TQRRTFFilter.

Det virker, og laver pæne word(rtf)-dokumenter.

Jeg kan dog ikke lige huske om eksportfiltrene er med i den skrabede version der følger med delphi, ellers kig hos www.qusoft.com
Avatar billede anna Nybegynder
25. oktober 2000 - 09:44 #4
>gummiand 
Har du et eksempel, hvor du bruger Quickreport ogTQRRTFFilter

Hilsen
@nna

Avatar billede gummiand Nybegynder
25. oktober 2000 - 11:34 #5
Fuck - filteret nægter selvfølgelig at eksportere TQRRichText.

Metoden kan godt bruges, men så skal du komponere dokumentet vha TQRLabel\'s TQRMemo\'s o. lign, men hvis du ikke vil bruge den samme font i hele dokumentet bliver det hurtigt besværligt.

Jeg checkker lige hos QuSoft om hvorfor det ikke virker.

Du får eksemplet alligevel, måske er der nogen der kan forbedre det. Du kan hente hele projektet her www.f-ld.dk/public/2word.zip

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  QuickRpt, Qrctrls, ExtCtrls, StdCtrls, ComCtrls, QRExport;

type
  TForm1 = class(TForm)
    QuickRep1: TQuickRep;
    PreView: TButton;
    Eksport: TButton;
    RichEdit1: TRichEdit;
    TitleBand1: TQRBand;
    QRLabel1: TQRLabel;
    QRRichText1: TQRRichText;
    QRMemo1: TQRMemo;
    procedure PreViewClick(Sender: TObject);
    procedure EksportClick(Sender: TObject);
    procedure TitleBand1BeforePrint(Sender: TQRCustomBand;
      var PrintBand: Boolean);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.PreViewClick(Sender: TObject);
begin
  QuickRep1.Preview;
end;

procedure TForm1.EksportClick(Sender: TObject);
var W: TQRRTFExportFilter;
begin
  W := TQRRTFExportFilter.Create(\'d:\\projekt\\richedit\\dokument.rtf\');
  try
      QuickRep1.ExportToFilter(W)
  finally
      W.Free;
  end;
end;

procedure TForm1.TitleBand1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
  QRRichtext1.ParentRichEdit := RichEdit1;
  with QRRichtext1.ParentRichEdit, Lines do  {eksporteres ikke}
  begin
      Clear;
      Add(\'Hello World\');
      SelAttributes.Style := [fsBold];
      SelAttributes.Color := clRed;
      Add(\'GoodBye World\');
  end;

  with QRMemo1, Lines do {ingen mulighed for skiftene fonte}
  begin
      Font.Name := \'Arial\';
      Font.Size := 24;
      Clear;
      Add(\'Hello World\');
      Add(\'GoodBye World\');
  end;
end;

end.


Avatar billede gummiand Nybegynder
25. oktober 2000 - 15:50 #6
Her er hvad jeg kunne få ud af QuSoft:

The TQRRichText, TQRDBRichText, TQRShape, TQRImage, TQRDBImage controls are not supported for the export filters (except for the WMF filter).  One workaround would be to use a TQRDBText control for the RTF data and enable it (and disable the RTF control) when the report\'s Exporting property is set to true.

Tja....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester