<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[FRAGE: FindData]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich bin noch ein neuling, habe mit dem BCB C++ v6 neu angefangen.<br />
Also in meinen ersten Projekt soll ich so etwas ähnliches wie eine<br />
User verwaltung erstellen.<br />
Ich kann mit meinem Programm folgendes machen:</p>
<p>User anlegen<br />
User bearbeiten<br />
User löschen<br />
User aus SmartOpen auslesen (SmartOpen ist ein Schließsystem der mit Transpondern funktioniert)</p>
<p>Meine frage ist, wenn ich die Daten von SmartOpen über RS232 lese und in meinem ListView ausgebe, werden die Datensätze immer neu angelegt. Ist ja nicht falsch, aber die Datensätze die schon existieren sollen nicht angelegt werden nur die neuen , die noch nicht in der Liste sind.</p>
<p>Wie könnte ich das erfolgreich in die Tat umsetzen?<br />
Könnte mir jemand nen Beispiel geben, wie das mit FindData o.ä. funktionieren könnte?</p>
<p>mfg<br />
guenter67</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/185401/frage-finddata</link><generator>RSS for Node</generator><lastBuildDate>Sun, 16 Aug 2026 09:41:32 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/185401.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 25 Jun 2007 10:07:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to FRAGE: FindData on Mon, 25 Jun 2007 10:07:07 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich bin noch ein neuling, habe mit dem BCB C++ v6 neu angefangen.<br />
Also in meinen ersten Projekt soll ich so etwas ähnliches wie eine<br />
User verwaltung erstellen.<br />
Ich kann mit meinem Programm folgendes machen:</p>
<p>User anlegen<br />
User bearbeiten<br />
User löschen<br />
User aus SmartOpen auslesen (SmartOpen ist ein Schließsystem der mit Transpondern funktioniert)</p>
<p>Meine frage ist, wenn ich die Daten von SmartOpen über RS232 lese und in meinem ListView ausgebe, werden die Datensätze immer neu angelegt. Ist ja nicht falsch, aber die Datensätze die schon existieren sollen nicht angelegt werden nur die neuen , die noch nicht in der Liste sind.</p>
<p>Wie könnte ich das erfolgreich in die Tat umsetzen?<br />
Könnte mir jemand nen Beispiel geben, wie das mit FindData o.ä. funktionieren könnte?</p>
<p>mfg<br />
guenter67</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1313217</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1313217</guid><dc:creator><![CDATA[guenter67]]></dc:creator><pubDate>Mon, 25 Jun 2007 10:07:07 GMT</pubDate></item><item><title><![CDATA[Reply to FRAGE: FindData on Mon, 25 Jun 2007 10:44:30 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Um TLiStView::FindData benutzen zu können must du den einzelnen Items beim Eintragen erstmal eine solche Dateninformation zuweisen. Und zwar in der Eigenschaft TListItem::Data. Dieser Eigenschaft kannst du zuweisen was du willst, in deinem Fall sollte es eine eindeutige ID des Datensatzes sein.<br />
Wenn diese ID vom Wertebreich her in ein (unsigned) int passt must du nur bei jedem neuen ListItem so die ID hinzufügen:</p>
<pre><code class="language-cpp">TListItem* NewItem = // ... Neues Item
int ID = // eindeutige ID des Datensatzes
NewItem-&gt;Data = reinterpret_cast&lt;void*&gt;(ID);
</code></pre>
<p>Dann kannst du FindData so einsetzen :</p>
<pre><code class="language-cpp">int ID = // ID die zu finden ist
TListItem* Item = ListView-&gt;FindData(0, reinterpret_cast&lt;void*&gt;(ID), true, false);
if (Item)
{
  // gefunden
  }
else
{
  // nicht gefunden
  }
</code></pre>
<p>Wenn die ID nicht in einen int passt bleibt dir nichts weiter übrig als die IDs in dynamischen Arrays abzulegen und als ID für die ListItems entweder die Indexe aus dem Array oder die Speicheradressen der Arrayelemente zu verwenden.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1313223</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1313223</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 25 Jun 2007 10:44:30 GMT</pubDate></item></channel></rss>