Announcement

Collapse
No announcement yet.

Tmemo in Komponente "Kein uebergeordnetes Fenster"

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Tmemo in Komponente "Kein uebergeordnetes Fenster"

    Hi zusammen <BR>
    Habe mal wieder ein Problem:<BR>
    Habe eine neue Komponente entwickelt. Diese enthaelt ca 100 verschiedene typen und funktionen.<BR>
    Nun wollte ich von der Anwendung auf ein internes Memo der Komponente zugreifen.<BR>
    Der compiler sagt ok. Die Anwendung stuerzt jedoch mit mit dem Fehler:<BR>
    " " hat kein ein uebergeordnetes Fenster" ab, wenn ich auf die Memo.lines zugreife.<BR>
    <BR>
    Der Constructor ermittelt schon das Anwenderfenster und stellt das Memo einwandfrei dar. Hat jemand eine Idee??<BR>
    Danke ... Gruss Christian

  • #2
    Moin Namensvetter,<br>
    <br>
    probiers doch mal damit auch die Methode CreateWnd zu überschreiben, und dort erst auf das Memo zuzugreifen. Dann ist der Konstruktor schon vollständig abgearbeitet und somit alles vorhanden, was Du brauchst.<br>
    Da CreateWnd öfter aufgerufen werden kann, solltest Du allerdings, z.b. mittels einer Flagvariablen, absichern, dass der, wohl initialisierende, Zugriff auf das Memo nur einmal erfolgt.<br>
    <br>
    Ciao<br>
    Chri

    Comment


    • #3
      Hallo Christian<BR>
      Ich werde das mal ausprobieren...<BR>
      Vielen Dank.

      Gruss Christia

      Comment


      • #4
        Nachtrag: <BR>
        So gehts auch: <BR>
        constructor
        <BR>
        ... <BR>
        if AOwner is TWinControl then <BR>
        Self.Parent := TWinControl(AOwner) <BR>
        else <BR>
        raise Exception.Create(Format('Component %s must be owned by <BR> TWinControl!', [Self.ClassName])); <BR&gt

        Comment


        • #5
          Ich habe ein ähnliches Problem bei meiner Komponente und zwar möchte rich folgendes realisieren: Meine Komponente ist abgeleitet von TCustomPanel, darauf habe ich eine TScrollbox erstellt, klappt wunderbar, auf der Scrollbox werden einige TDBEdits erstellt auch kein Problem, erst wenn ich eine TDBRichEdit erstellen will, bekomme ich auch die Fehlermeldung Element (TScrollbox) hat kein übergeordnetes Fenster, Es handelt sich übrigens um ein RichEdit von http://www.trichview.com! Danke schon einmal

          Comment


          • #6
            Ich habe gerade festgestellt wenn ich vonr TDBRichEdit ableite funktioniert es, was muss ich machen damit ich von der RichEdit komponente des anderen Herstellers ableiten kann

            Comment

            Working...
            X