AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Im Stringgrid oben eine neue Zeile einfügen

Ein Thema von Hallo_Thomas · begonnen am 30. Jul 2005 · letzter Beitrag vom 5. Sep 2013
 
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#14

Re: Im Stringgrid oben eine neue Zeile einfügen

  Alt 31. Jul 2005, 10:47
Hallo yankee,

die Signatur deiner Funktion InsertGridLine() zeigt mir, dass du dir schon etwas mehr Gedanken als ein Anfänger machst. Durch die von dir gewählte Signatur erhöhst du die Wiederverwendbarkeit beträchtlich. Ist doch schade, wenn du dann bei der Implementierung nur die Minimalanforderung von Thomas umsetzt. Deswegen mein Hinweis auf die FixedRows.

Ich glaube ja nicht, dass du vor dem Schreiben deiner Schleife den Quellcode von der Komponente analysiert hast. Solange der accessor für die array property Rows aber TStrings zurückliefert, musst du nach dem black box Prinzip die für das Kopieren vorgesehene Methode Assign() verwenden. Wäre jetzt eine Row wirklich eine Komponente der Klasse TStrings, dann würdest du Zeiger kopieren, wobei der Zeiger auf die letzte Row vernichtet würde und der Zeiger auf die neue Zeile identisch mit dem der Zeile darüber wäre - oder? Ergebnis wäre ein Speicherleck und eine Doppelreferenz der Zeilen index und Succ(index) auf die gleichen Daten. Passiert aber nicht, weil intern die Spaltenwerte erst beim Zugriff zu einer StringList zusammen gezogen werden. Auch der Schreibzugriff ist etwas komplexer als eine bloße Zeigerzuweisung. Also sage ich "Glück gehabt", aber es gilt ja auch "Glück hat nur der Tüchtige" und dann bist du ja auf dem richtigen Weg.

Sonntagsgrüße vom marabu
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz