Sind Textboxen für eine bestimmte Seite schon erzeugt?

  • Hallo,

    ich habe beschlossen, Textboxen nicht im Header, sondern im Text anzulegen.

    Im OnGetSpecialText muss ich aber nun herausfinden, ob für die betreffende Seite die Textboxen bereits erzeugt wurden.

    Im Header geht das einfach per

    Code
    if Kind = wpIsHeader then
      begin
        aName := 'HEADER#' + inttostr(pagenr);
        SpecialText := WPRichText1.HeaderFooter.Get(wpIsHeader, wpraNamed, aName);
        if SpecialText.Empty then
        begin
    ...

    wie aber kann ich erkennen, ob auf der Seite im Bodytext etwas vorhanden ist?

    Die Textboxen werden im OnGetSpecialText erzeugt

    Code
        txtObj := WPRichText1.TextObjects.InsertTextBox(3000, 500, RTFData);
        txtObj.PositionMode := wpotPage;    
        txtObj.ExtraProp['Seite'] := pagenr.ToString;

    was funktioniert, aber wenn ich alle TextObjekte durchlaufe

    Code
      WPRichText1.TextObjectsGetList(list, wpobjTextObject, true);
      for i := 0 to list.Count - 1 do
      begin
        if list[i].ExtraProp['Seite'] = 'Seite' + pagenr.tostring then
        begin
          pagevorhanden := true;
          break;
        end;
      end;

    ist die ExtraProp immer leer!

    Was läuft da schief?

    Ciao

    Stefan

  • Ja, irgendwie drehe ich mich im Kreis!

    Eigentlich möchte ich die Textboxen in den Headern, nur lande ich beim Klick auf eine solche zuerst oben im Header zwischen den beiden gepunkteten Zeilen, da soll der Nutzer aber nichts einfügen dürfen

    (siehe Gesperrter Header aber Textobjekte darin bearbeitbar)

    Daher die Idee, die Boxen nun doch auf die Seiten im Body zu platzieren, was ja aber auch nicht so einfach geht (weil teilweise dann doppelt erzeugt)

    Lässt sich für das Problem im obigen Link eine Lösung finden?

    Ciao

    Stefan