Announcement

Collapse
No announcement yet.

Afterscroll und DataModule

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

  • Afterscroll und DataModule

    Hallo Leute!<br>
    Ich arbeite mit Delphi 5 und habe folgende Frage:<br>
    Das Ereignis AfterScroll ist sehr hilfreich, wenn man in einer Maske z.B. bestimmte Schaltflächen steuern möchte. Was tut man aber, wenn man ein DataModul verwendet und sich die Datenquelle somit nicht im Formular befindet? Das Formular wird immer explizit nur dann erzeugt, wenn es gebraucht wird, die Datenmenge (Tabelle) wird öfters auch ohne Formular gebraucht.<br>
    Leider wird das Ereignis AfterScroll auch erzeugt, wenn z.B. die Datenmenge geöffnet wird und das Formular noch gar nicht da ist. Folge: Es tritt eine Exception auf. Sicherlich könnte man die Exception abfangen, aber ich bin eigentlich kein Freund von solchen Sachen... man weiß ja nie.<br>
    Man könnte natürlich eine DataSource-Komponente in das Formular setzen. Hier gibt es aber leider kein AfterScroll, sondern nur ein DataChange, das wiederum auch ausgelöst wird sobald sich ein Feld ändert.<br>
    Hat jemand eine gute Idee wie man das <b>sauber</b> macht?<br>
    Gruß Udo

  • #2
    Hallo, erstelle doch eine TTable / TQuery mit einer DataSource in dem Formular.<BR>
    Dann kannst du genau steuern wann die Tabelle z.B. geöffnet wird und auf das AfterScroll reagieren.<BR>
    <br>
    oder du musst alles mit try except end abfangen

    Comment


    • #3
      Hi Udo,<BR><BR>

      schau mal in der Delphi Hilfe unter TDataLink nach.<BR>
      Ich habe von TDataLink eine eigene Klasse mit eigenen Methoden abgeleitet und erzeuge pro Formular ein DataLink Objekt. Das ist der saubere Weg.<BR><BR>
      Gruß, Fran

      Comment


      • #4
        Hi,

        der eigenen DataLink Nachfahre von Frank Reim ist, objketorientiert betrachtet sicher der sauberste Weg.
        Ein RAD-Ansatz ist aber auch mit der DataSource und OnChange möglich. Im Ereignishandler einfach den Parameter Field abfragen, ist der Parameter Field nil, handelt es sich um eine Satzänderung.

        Bernd U

        Comment

        Working...
        X