Kopf und Fuss verwalten - 1. Dropdown Order / 2. Kopftext : Benannt

    • Offizieller Beitrag

    Zuerst muss gesagt werden, dass RTF nur bestimmte Auswahlen (Range: TWPPagePropertyRange) unterstützt, das sind alle, erste, gerade und un gerade.

    WPTools kann aber auch andere, insbesondere

    wpraOnLastPage, wpraNotOnFirstAndLastPages, wpraNotOnLastPage, wpraIgnored, wpraNotOnFirstPage

    Andere Auswahlen bedürfen Programmierung über das Ereignis OnGetSpecialText. Hier kann in abhängigkeit der nummer der aktuellen Seite ein Kopf- oder Fusstext für diese spezielle Seite ausgewählt werden. Diese Auswahl gilt dann nur für die Anzeige (oder Druck) in diesem Moment. Gespeichert wird die Auswahl nicht, da der Text ja grundsätzlich nicht in feste Seiten unterteilt ist. Hier kommt dann "Benannt" ins spiel, da für die Auswahl der Name herangezogen werden kann.

    Die Reihenfolge im Menü in HeaderFooter dialog wird vorgegeben in der unit wpManHeadFoot.pas, procedure TWPManageHeaderFooter.InitMenu. Die Reihenfolge ergibt sich aus der schleife

    for r := Low(TWPPagePropertyRange) to High(TWPPagePropertyRange) do

    Mit der Eigenschaft PossibleRanges kann ausgewählt werden, welche Element sichtbar werden können.

  • Danke, das funktioniert mit folgenden Code, Kopf und Fuss = "nicht auf letzter Seite" definiert.

    Auf der letzten Seite kann der Anwender den Rand für Kopf und Fuss verkleinern, auf den vorhergehenden Seiten aber nicht.

    Bei der Ausgabe der Seiten 4 .. Letzte Seite -1 soll aber auch kein Rand für Kopf und Fuss stehen bleiben.

    Code
    procedure TWV.PrintRichTextGetSpecialText(Sender: TObject; Par: TParagraph; posinpar, pagenr: Integer;
    Kind: TWPPagePropertyKind; var IsLastPage, UseThis: Boolean; var SpecialText: TWPRTFDataBlock);
    begin
       if pagenr > 3 then isLastPage := true; // Test
    end;