![]() |
Daten ins stringgrid einlesen
Rufe emails von einem Server ab und zeige diese über ein Stringgrid an. wenn ich nun neue Emails abrufe dann soll er diese hinzufügen. Klappt aber nicht. Es gibt eine Fehlermeldung.
Die neuen Nachrichten sollen ab der letzten zeile miteingetragen werden. hier mal der Code zum einlesen
Delphi-Quellcode:
Hat jemand einen Rat???
Nachrichtenliste := 0 ;
if idpop31.Connected then Nachrichtenliste:=idpop31.CheckMessages; if Nachrichtenliste > 0 then begin for Index := Nachrichtenliste downto 1 do begin idmessage1.clear; idPOP31.RetrieveHeader(Index, IdMessage1); Form3.eltreestringgrid1.cells[0,index-1] := IdMessage1.From.Address; IdPOP31.Retrieve(index,idMessage1); Form3.eltreestringgrid1.cells[1,index-1] := IdMessage1.Subject; IdPOP31.Retrieve(index,idMessage1); Form3.eltreestringgrid1.cells[2,index-1] := IdMessage1.body.GetText; IdPOP31.RetrieveHeader(index,idmessage1); Form3.eltreestringgrid1.Cells[3,index-1] := Datetostr(Idmessage1.Date); IdPOP31.RetrieveHeader(index,idmessage1); Form3.eltreestringgrid1.Cells[4,index-1] := IdMessage1.From.Name; IdPOP31.Delete(index); end; |
AW: Daten ins stringgrid einlesen
Es wäre zuckersüß von dir wenn du uns zumindest die Fehlermeldung zeigen würdest
|
AW: Daten ins stringgrid einlesen
Zitat:
Grüße Klaus |
AW: Daten ins stringgrid einlesen
|
AW: Daten ins stringgrid einlesen
kommt jetzt keine Fehler Meldung mehr er überschreibt die vorhandenen emails. Und nun?
|
AW: Daten ins stringgrid einlesen
Zitat:
Wie teilst du dem StringGrid denn mit, dass du nun x Zeilen brauchst? Wie ermittelst du, in welche Zeile du schreiben musst? |
AW: Daten ins stringgrid einlesen
Eigendlich übernimmt er ja nur den Index der Nachrichten liste muss ich hier jetzt noch ne 2. Schleife fürs Stringgrid einbauen?
|
AW: Daten ins stringgrid einlesen
Du musst dem StringGrid mitteilen, wieviele Zeilen du denn haben möchtest
![]() Also, überlege dir, wie du an die Zeilenanzahl kommst und passe diese entsprechend an. Dann überlege dir, wie du an den Zeilenindex kommst, wo du die neuen Daten eintragen willst und trage die Daten dort ein. Und wenn du es richtig machen möchtest, dann erzeuge dir eine Klasse, die die Informationen zur Mail speichert und hängst diese einfach an eine ![]() Zur Aktualisierung des StringGrids schreibst du dir einfach eine Routine, die diese Liste in einem StringGrid anzeigt
Delphi-Quellcode:
procedure ShowListInStringGrid( AMailInfoList : TObjectList; AStringGrid : TStringGrid );
begin // hier jetzt das Geraffel für die Anzeige der Daten end; |
AW: Daten ins stringgrid einlesen
![]() |
AW: Daten ins stringgrid einlesen
Da die nachrichtenliste dir var ist die mir die anzahl der zeilen gibt die ich brauche müsste ich ja den rowcount um diese anzahl vergrössern.
Richtig? Dann müsste ich ihm anschliessend sagen das er aber der ersten leere Zeile die Daten über nehmen soll richtig??
Delphi-Quellcode:
Form3.ElTreeStringGrid1.RowCount:= Form3.ElTreeStringGrid1.RowCount+nachrichtenliste;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:06 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