AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Inhalt von 2 Stringgrids Synchronisieren
Thema durchsuchen
Ansicht
Themen-Optionen

Inhalt von 2 Stringgrids Synchronisieren

Ein Thema von 5etH · begonnen am 8. Jun 2009 · letzter Beitrag vom 8. Jun 2009
 
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Inhalt von 2 Stringgrids Synchronisieren

  Alt 8. Jun 2009, 09:00
300 Zeilen ist wenig, selbst 1000 sind noch wenig. StringGrids werden so ab 10.000 ziemlich verschwenderisch.

Also ich würde die Aufgaben erst mal aufsplitten, StringGrid Reihen sind normale TStrings.

1) Funktion zum Vergleichen von TStrings (evtl ginge sogar ein Vergleich von DelimitedText)
2) Schleife die ungleiche TStrings in einem Grid oder Array sammeln
3) Das Grid (oder Array), das gesammelt hat in das andere kopieren


1)
Delphi-Quellcode:
function StrListEqual(StringsA, StringsB : TStrings):Boolean;
var
  i, Count : Integer;
begin
  Result := False;
  Count := StringsA.Count;
  if Count = StringsB.Count then
  begin
    i := 0;
    while i < Count do
      if StringsA[i] <> StringsB[i] then Exit;
    Result := True;
  end;
end;
3)
Delphi-Quellcode:
procedure CopyStringGrid(FromGrid, ToGrid : TStringGrid);
var
  i, Count : Integer;
begin
  Count := FromGrid.RowCount;
  ToGrid.RowCount := Count;
  for i := 0 to Count-1 do
    ToGrid.Rows[i].Assign(FromGrid.Rows[i]);
end;
Fehlt noch die Aufgabe 2)

StringGrid B zeilenweise mit A Vergleichen und bei Bedarf an A anhängen. Danach A -> B kopieren. Der Vergleich kann noch mit UpperCase CaseInsensiv gestaltet werden. bei neueren Delphi-Versionen kann auch DelimitedText mit CompareStr verglichen werden.
  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 22:57 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