<?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[StringGrid Zeile kopieren unter Bedingung schlägt fehl]]></title><description><![CDATA[<p>Hallo auch. Ich bin am verzweifeln. Ich versuche die gesamte Zeile eines StringGrid in ein weiteres zu kopieren. Das geht alles solange gut, wenn es an keine Bedingung geknüpft ist. Bei einer Bedingung erhalte ich Kauderwelsch aber keine Fehlermeldung. Ich hoffe ihr könnt mir helfen...</p>
<pre><code>void __fastcall TMainForm::Select_KBereich_TabChange(TObject *Sender)
{
 int Tabellenzeilen = StringGrid1-&gt;RowCount;
 int KBereich = Select_Tab-&gt;ItemIndex;

 StringGrid2-&gt;RowCount=1;

 for(int i=1; i&lt;Tabellenzeilen; i++)
 {
//  if(StringGrid1-&gt;Cells[2][i] == 3)
  {
   StringGrid2-&gt;Cells[2][i-1] = StringGrid1-&gt;Cells[2][i];
   StringGrid2-&gt;RowCount++;
  }
 }
 StringGrid2-&gt;RowCount--;
}
</code></pre>
<p>Lasse ich die if() Bedingung weg, so kopiert er mir Zeile für Zeile 1:1 rüber. So wie erwartet. Frage ich aber mit der Bedingung ab, das er mir nur bestimmte Zeilen kopiert, schreibt er Leerzeilen oder völlig falsche Zahlen in das neue StringGrid.</p>
<p>Das StringGrid ist in etwa so aufgebaut:</p>
<p>ID; Name; ID2<br />
1; Test Name; 4<br />
2; Test Name 2; 3</p>
<p>Kann mir wer helfen oder nen Tip geben ?</p>
<p>PS: Dasselbe passiert auch wenn ich StringGrid2-&gt;Rows[i-1] = StringGrid1-&gt;Rows[i]; verwende...</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/134258/stringgrid-zeile-kopieren-unter-bedingung-schlägt-fehl</link><generator>RSS for Node</generator><lastBuildDate>Sat, 01 Aug 2026 04:31:50 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/134258.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 24 Jan 2006 20:23:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to StringGrid Zeile kopieren unter Bedingung schlägt fehl on Tue, 24 Jan 2006 20:24:13 GMT]]></title><description><![CDATA[<p>Hallo auch. Ich bin am verzweifeln. Ich versuche die gesamte Zeile eines StringGrid in ein weiteres zu kopieren. Das geht alles solange gut, wenn es an keine Bedingung geknüpft ist. Bei einer Bedingung erhalte ich Kauderwelsch aber keine Fehlermeldung. Ich hoffe ihr könnt mir helfen...</p>
<pre><code>void __fastcall TMainForm::Select_KBereich_TabChange(TObject *Sender)
{
 int Tabellenzeilen = StringGrid1-&gt;RowCount;
 int KBereich = Select_Tab-&gt;ItemIndex;

 StringGrid2-&gt;RowCount=1;

 for(int i=1; i&lt;Tabellenzeilen; i++)
 {
//  if(StringGrid1-&gt;Cells[2][i] == 3)
  {
   StringGrid2-&gt;Cells[2][i-1] = StringGrid1-&gt;Cells[2][i];
   StringGrid2-&gt;RowCount++;
  }
 }
 StringGrid2-&gt;RowCount--;
}
</code></pre>
<p>Lasse ich die if() Bedingung weg, so kopiert er mir Zeile für Zeile 1:1 rüber. So wie erwartet. Frage ich aber mit der Bedingung ab, das er mir nur bestimmte Zeilen kopiert, schreibt er Leerzeilen oder völlig falsche Zahlen in das neue StringGrid.</p>
<p>Das StringGrid ist in etwa so aufgebaut:</p>
<p>ID; Name; ID2<br />
1; Test Name; 4<br />
2; Test Name 2; 3</p>
<p>Kann mir wer helfen oder nen Tip geben ?</p>
<p>PS: Dasselbe passiert auch wenn ich StringGrid2-&gt;Rows[i-1] = StringGrid1-&gt;Rows[i]; verwende...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/975337</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/975337</guid><dc:creator><![CDATA[bilbo_b]]></dc:creator><pubDate>Tue, 24 Jan 2006 20:24:13 GMT</pubDate></item><item><title><![CDATA[Reply to StringGrid Zeile kopieren unter Bedingung schlägt fehl on Tue, 24 Jan 2006 21:22:19 GMT]]></title><description><![CDATA[<p>bilbo_b schrieb:</p>
<blockquote>
<p>Frage ich aber mit der Bedingung ab [...] schreibt er Leerzeilen oder völlig falsche Zahlen in das neue StringGrid.</p>
</blockquote>
<p>Bist du sicher, dass du die richtige Zelle abfragst?<br />
Bist du sicher, dass du in die richtigen Zellen schreibst?</p>
<p>PS.<br />
Mit &quot;bist du sicher&quot; ist gemeint &quot;hast du per <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39301.html" rel="nofollow">Debugger</a> überprüft&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/975398</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/975398</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Tue, 24 Jan 2006 21:22:19 GMT</pubDate></item><item><title><![CDATA[Reply to StringGrid Zeile kopieren unter Bedingung schlägt fehl on Wed, 25 Jan 2006 09:35:45 GMT]]></title><description><![CDATA[<p>Also mit dem Debugger hab ichs nicht überprüft. Aber ich hab mir testweise für jede Zeile das Ergebniss in ShowMessage(); ausgeben lassen danach ist es in die neue Tabelle gewandert. In den Dialogboxen kamm alles so rüber und auch genau das was ich in der Bedingung abgefragt habe. Der Schreibvorgang baut dann aber wieder Mist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/975651</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/975651</guid><dc:creator><![CDATA[bilbo_b]]></dc:creator><pubDate>Wed, 25 Jan 2006 09:35:45 GMT</pubDate></item><item><title><![CDATA[Reply to StringGrid Zeile kopieren unter Bedingung schlägt fehl on Wed, 25 Jan 2006 09:45:52 GMT]]></title><description><![CDATA[<p>Mit ddeiner Bedingung schreibst du in eine Reihe des StringGrid2, die es noch garnicht gibt.(Schau dazu mal im Debugger was in deiner Variablen i in der Schleife steht).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/975674</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/975674</guid><dc:creator><![CDATA[bofu]]></dc:creator><pubDate>Wed, 25 Jan 2006 09:45:52 GMT</pubDate></item><item><title><![CDATA[Reply to StringGrid Zeile kopieren unter Bedingung schlägt fehl on Wed, 25 Jan 2006 09:53:59 GMT]]></title><description><![CDATA[<p>Ich bin zu dooooooof. Grrr man sollte wirklich nicht programmieren wenn n Haufen Kinder um einen drumherum ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /></p>
<p>Die Zeile in die ich schreibe gibt es schon. Aber was es nicht gibt, ist dieselbe Anzahl von Zeilen in beiden Tabellen, der soll ja die neue Tabelle erst aufbauen. Es funktioniert nun. Korrekt müsste das ganze in etwa so aussehen:</p>
<pre><code>void __fastcall TMainForm::Select_KBereich_TabChange(TObject *Sender)
{
 GridPfarrbereich2-&gt;RowCount=1;

 for(int i=1; i&lt;GridPfarrbereich1-&gt;RowCount; i++)
 {
  if(GridPfarrbereich1-&gt;Cells[2][i] == Select_KBereich_Tab-&gt;ItemIndex)
  {
   GridPfarrbereich2-&gt;Cells[0][GridPfarrbereich2-&gt;RowCount-1] = GridPfarrbereich1-&gt;Cells[0][i];
   GridPfarrbereich2-&gt;Cells[1][GridPfarrbereich2-&gt;RowCount-1] = GridPfarrbereich1-&gt;Cells[1][i];
   GridPfarrbereich2-&gt;Cells[2][GridPfarrbereich2-&gt;RowCount-1] = GridPfarrbereich1-&gt;Cells[2][i];
   GridPfarrbereich2-&gt;RowCount++;
  }
 }
 GridPfarrbereich2-&gt;RowCount--;
}
</code></pre>
<p>Jansen hatte also wie so oft recht oder hat mich zumindest auf die richtige Idee gebracht. Nun kann ich wieder besser schlafen ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/975680</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/975680</guid><dc:creator><![CDATA[bilbo_b]]></dc:creator><pubDate>Wed, 25 Jan 2006 09:53:59 GMT</pubDate></item><item><title><![CDATA[Reply to StringGrid Zeile kopieren unter Bedingung schlägt fehl on Wed, 25 Jan 2006 10:01:12 GMT]]></title><description><![CDATA[<p>Mit dem hier schreibst du ins StringGrid2 ohne zu wissen, ob es die Zeile dort schon gibt.</p>
<pre><code class="language-cpp">StringGrid2-&gt;Cells[2][i-1] = StringGrid1-&gt;Cells[2][i];
</code></pre>
<p>und so</p>
<pre><code class="language-cpp">GridPfarrbereich2-&gt;Cells[0][GridPfarrbereich2-&gt;RowCount-1] = GridPfarrbereich1-&gt;Cells[0][i];
</code></pre>
<p>eben nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/975691</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/975691</guid><dc:creator><![CDATA[bofu]]></dc:creator><pubDate>Wed, 25 Jan 2006 10:01:12 GMT</pubDate></item></channel></rss>