<?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[TStringGrid]]></title><description><![CDATA[<p>Habe gelesen dass sich einige hier schon mit dem TStringGrid beschäftigt haben. Wollte mal fragen ob man bestimmte Zeilen oder Spalten Sperren kann oder ob man spieziell nur auf bestimmte Zeilen oder Spalten zugreifen kann. Möchte ja etwas per Hand später im Programm eingeben können. Sollten aber immer nur die lezten Spalten sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/164317/tstringgrid</link><generator>RSS for Node</generator><lastBuildDate>Wed, 12 Aug 2026 09:22:55 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/164317.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 07 Nov 2006 08:16:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 08:16:17 GMT]]></title><description><![CDATA[<p>Habe gelesen dass sich einige hier schon mit dem TStringGrid beschäftigt haben. Wollte mal fragen ob man bestimmte Zeilen oder Spalten Sperren kann oder ob man spieziell nur auf bestimmte Zeilen oder Spalten zugreifen kann. Möchte ja etwas per Hand später im Programm eingeben können. Sollten aber immer nur die lezten Spalten sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170207</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170207</guid><dc:creator><![CDATA[Hannes Hilflos]]></dc:creator><pubDate>Tue, 07 Nov 2006 08:16:17 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 08:21:29 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Mit dem Event <em>TStringGrid::OnSelectCell</em> auswerten, ob aktuelle Auswahl bearbeitet werden kann, und entsprechend <em>TStringGrid::Options</em> setzen.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170210</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170210</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 07 Nov 2006 08:21:29 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 09:18:44 GMT]]></title><description><![CDATA[<p>Hey, danke für den Tip.<br />
Soweit, so gut. Leider funktioniert das noch nicht ganz. Was habe ich vergessen?</p>
<pre><code class="language-cpp">void __fastcall TForm_Main::StringGrid1SelectCell(TObject *Sender, int ACol,
      int ARow, bool &amp;CanSelect)
{
	if (ACol == 2)
    {
    	StringGrid1-&gt;EditorMode = true;

    }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1170242</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170242</guid><dc:creator><![CDATA[Hannes Hilflos]]></dc:creator><pubDate>Tue, 07 Nov 2006 09:18:44 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 09:33:37 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>1. Was funktioniert nicht. Korrekte Fehlerbeschreibungen sind wichtig.<br />
2. Ist bei Options goEditing und nicht goAlwaysShowEditor gesetzt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170250</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170250</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 07 Nov 2006 09:33:37 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 09:33:41 GMT]]></title><description><![CDATA[<p>Wie akari schon geschrieben hat: TStringGrid::Options, goEditing bestimmt, ob das Grid bearbeitet werden kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170251</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 07 Nov 2006 09:33:41 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 09:41:05 GMT]]></title><description><![CDATA[<p>Danke für die Schnellen Antworten. Leider möchte ich ja nur die letzte Spaltenreihe des StringGrids bearbeiten. Sobald ich</p>
<pre><code class="language-cpp">void __fastcall TForm_Main::STringGrid1SelectCell(TObject *Sender, int ACol,
      int ARow, bool &amp;CanSelect)
{
	if (ACol == 2)
    {
    	STringGrid1-&gt;EditorMode = true;
        STringGrid1-&gt;Options &lt;&lt; goEditing;

    }
}
</code></pre>
<p>In den Quelltext einfüge ist es ja so, dass ich bei einmaliger anwahl der zweiten Spaltenreihe, grundsätzlich alle Zellen geändert werden können.<br />
Wenn ich allerdings</p>
<pre><code class="language-cpp">STringGrid1-&gt;Options &gt;&gt; goEditing;
</code></pre>
<p>wieder einfüge, kann ich nichts ändern. Gibt es dort einen Tip von euch, wie ich eine ganze Spaltenreihe ändern kann und den Rest nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170259</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170259</guid><dc:creator><![CDATA[Hannes Hilflos]]></dc:creator><pubDate>Tue, 07 Nov 2006 09:41:05 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 09:49:50 GMT]]></title><description><![CDATA[<p>Nein Du kannst immer nur das komplette Grid editierbar machen. Wo ist denn das Problem? Abhänging von der Spalte, in die der User klickt, machst Du das Grid editierbar, oder eben nicht editierbar.</p>
<pre><code class="language-cpp">void __fastcall TForm_Main::STringGrid1SelectCell(TObject *Sender, int ACol,
      int ARow, bool &amp;CanSelect)
{
    if (ACol == 2)
        StringGrid1-&gt;Options &lt;&lt; goEditing;
    else
        StringGrid1-&gt;Options &gt;&gt; goEditing;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1170265</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170265</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 07 Nov 2006 09:49:50 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 09:51:18 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Die Bedingung hat natürlich zwei Seiten. Desweiteren ist das mit dem &quot;reinschieben&quot; von Werten in VCL-Properties nicht so einfach.</p>
<pre><code class="language-cpp">void __fastcall TForm_Main::STringGrid1SelectCell(TObject *Sender, int ACol,
      int ARow, bool &amp;CanSelect)
{
    if (ACol == 2)
    {
        StringGrid1-&gt;EditorMode = true;
        StringGrid1-&gt;Options = StringGrid1-&gt;Options &lt;&lt; goEditing;
    }
    else
    {
        StringGrid1-&gt;EditorMode = false;
        StringGrid1-&gt;Options = StringGrid1-&gt;Options &gt;&gt; goEditing;
    }
}
</code></pre>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170267</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170267</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 07 Nov 2006 09:51:18 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 10:05:08 GMT]]></title><description><![CDATA[<p>Ach klar,<br />
danke euch. Da hätte ich ja drauf kommen müssen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170278</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170278</guid><dc:creator><![CDATA[Hannes Hilflos]]></dc:creator><pubDate>Tue, 07 Nov 2006 10:05:08 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 10:05:10 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">StringGrid1-&gt;Options = StringGrid1-&gt;Options &lt;&lt; goEditing;
</code></pre>
<p>Zu meiner eigenen großen Überraschung funktioniert es in diesem Fall auch ohne die Zuweisung, also so, wie ein meinem Beispiel. Zumindest im BCB6.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170279</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170279</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 07 Nov 2006 10:05:10 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 10:16:24 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Hm, im BCB5 gehts auch ohne extra Zuweisung... erstaunlich.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170291</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170291</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 07 Nov 2006 10:16:24 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 11:59:42 GMT]]></title><description><![CDATA[<p>Habe nun ein weiteres Problem, welches ich nicht ganz beheben kann.<br />
Möchte ja nun die einegegeben Werte Überprüfen ob sie<br />
1. Zahlen Werte sind<br />
2. Nicht unter bzw. über einen Wertebereich kommen.</p>
<p>In einem meiner Verusche habe ich dieses hier probiert. Leider völlig blöde und unpraktisch. Zusätzlich auch noch fehlerhaft.</p>
<pre><code class="language-cpp">void __fastcall TForm_Main::STringGrid1SetEditText(TObject *Sender, int ACol,
      int ARow, const AnsiString Value)
{
     if (Value &lt; 0 || Value &gt;1)
     {
      	STringGrid1-&gt;Cells[ACol][ARow] = &quot;0&quot;;
     }
}
</code></pre>
<p>Hat jemand von euch ein Tip oder ein Beispiel?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170376</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170376</guid><dc:creator><![CDATA[Hannes Hilflos]]></dc:creator><pubDate>Tue, 07 Nov 2006 11:59:42 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 12:03:48 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>siehe die Funktion <em>StrToIntDef</em> in der BCB-Hilfe</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170379</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170379</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 07 Nov 2006 12:03:48 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 12:08:44 GMT]]></title><description><![CDATA[<p>Klasse, das war ein guter Tip.<br />
Danke dir.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170389</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170389</guid><dc:creator><![CDATA[Hannes Hilflos]]></dc:creator><pubDate>Tue, 07 Nov 2006 12:08:44 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 13:14:38 GMT]]></title><description><![CDATA[<p>Das ist mir shon fast peinlich, aber ich habe noch eine, für euch, einfache Frage.</p>
<p>Ich möchte nun die Anzahl der einzugebenen Zeichen auf eins beschränken und gleichzeitig verhindern das Buchstaben eingegben werden könnnen.</p>
<p>Könntet ihr mir dabei nochmal helfen? Verspreche, ich werde versuchen dann nicht mehr fragen.<br />
Das ganze muss wohl bei 'OnSetEditText' passieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170446</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170446</guid><dc:creator><![CDATA[Hannes Hilflos]]></dc:creator><pubDate>Tue, 07 Nov 2006 13:14:38 GMT</pubDate></item><item><title><![CDATA[Reply to TStringGrid on Tue, 07 Nov 2006 13:24:32 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Siehe den Event <em>TStringGrid::OnGetEditMask</em>. Dort gibst du eine Maske an, wie du es bei TMaskEdit machen würdest.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1170455</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1170455</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 07 Nov 2006 13:24:32 GMT</pubDate></item></channel></rss>