<?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[TListView Einträge farbig machen]]></title><description><![CDATA[<p>Ich habe da ein TListView mit TListItems, welche ich gerne unterschiedlich färben möchte.</p>
<p>Wie mache ich das, ich finde keine passende Eigenschaft?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/118771/tlistview-einträge-farbig-machen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 25 Jul 2026 04:09:55 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/118771.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 24 Aug 2005 09:19:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 09:19:34 GMT]]></title><description><![CDATA[<p>Ich habe da ein TListView mit TListItems, welche ich gerne unterschiedlich färben möchte.</p>
<p>Wie mache ich das, ich finde keine passende Eigenschaft?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857379</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857379</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Wed, 24 Aug 2005 09:19:34 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 09:23:42 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>dazu must du die On...Draw... - Events benutzen. Je nachdem wie aufwendig deine Modifikationen sind, brauchst du einen anderen.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857386</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857386</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Wed, 24 Aug 2005 09:23:42 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 09:45:45 GMT]]></title><description><![CDATA[<p>Danke, das scheint der richtige Weg zu sein.</p>
<p>Als ich das Ereignis &quot;nDrawItem&quot; des TListView eingefügt habe, meldet der Compiler eine Mehrdeutigkeit zwischen TOwnerDrawState und Windows::TOwnerDrawState bei folgender Funktion:</p>
<pre><code class="language-cpp">void __fastcall lst_charakteristikenDrawItem(
          TCustomListView *Sender, TListItem *Item, TCanvas *Canvas,
          const TRect &amp;Rect, TOwnerDrawState State);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/857409</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857409</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Wed, 24 Aug 2005 09:45:45 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 10:00:55 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>kann ich nicht nachvollziehen. Wenn du den Event ordentlich über den Objektinspektor erstellst hast, funktioniert alles.<br />
Such mal in der Header- und der Implementationsdatei nach <em>Windows::TOwnerDrawState</em> und lösche das Windows::</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857417</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Wed, 24 Aug 2005 10:00:55 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 10:16:28 GMT]]></title><description><![CDATA[<p>achso:</p>
<p>ich verwende nicht VCL sondern CLX, vielleicht ist da wieder ein Bug ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857422</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Wed, 24 Aug 2005 10:16:28 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 11:39:57 GMT]]></title><description><![CDATA[<p>Also das Problem tritt bei neuen CLX-Projekten auf.</p>
<pre><code class="language-cpp">void __fastcall lst_charakteristikenDrawItem(
          TCustomListView *Sender, TListItem *Item, TCanvas *Canvas,
          const TRect &amp;Rect, TOwnerDrawState State);
</code></pre>
<p>Das Problem:</p>
<pre><code>[C++ Fehler] Unit1.h(21): E2015 Mehrdeutigkeit zwischen 'TOwnerDrawState' und 'Windows::TOwnerDrawState'
</code></pre>
<p>Wie mache ich dem Compiler nun klar, dass er das erste verwenden soll?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857471</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857471</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Wed, 24 Aug 2005 11:39:57 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 12:21:14 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>also in der VCL ist die Originaldeklaration mit <em>Stdctrls::TOwnerDrawState State</em> angegeben. Versuch mal den Namespace</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857495</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857495</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Wed, 24 Aug 2005 12:21:14 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 12:36:42 GMT]]></title><description><![CDATA[<p>Danke für die Hilfe, aber irgendwie habe ich gerade ein Brett vor dem Kopf:</p>
<p>Bei CLX ist es der Namespace Qstdctrls aus der Datei QStdCtrls.hpp.</p>
<p>In meine Header-Datei des Formulars habe ich nun das &quot;using namespace Qstdctrls;&quot; eingefügt:</p>
<pre><code class="language-cpp">// [..]
#include &lt;QStdCtrls.hpp&gt;
// [..]

using namespace Qstdctrls;

class TForm1 : public TForm
{
__published:	// Von der IDE verwaltete Komponenten
// [..]
        void __fastcall ListView1DrawItem(TCustomListView *Sender,
          TListItem *Item, TCanvas *Canvas, const TRect &amp;Rect,
          TOwnerDrawState State);
// [..]
};
</code></pre>
<p>Das Problem bleibt, der Compiler meint immernoch in der Auswahl Windows::TOwnerDrawState zu haben.<br />
Die Deklaration der Funktion kann ich nicht veraendern, da sie sonst gar nicht mehr angesprungen wird, da der RAD die als Fremdkoerper empfindet.</p>
<p>Gibt's eine Lösung?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857505</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857505</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Wed, 24 Aug 2005 12:36:42 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 12:42:27 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>nein, das using meinte ich nicht, sondern das</p>
<pre><code class="language-cpp">void __fastcall ListView1DrawItem(TCustomListView *Sender,
          TListItem *Item, TCanvas *Canvas, const TRect &amp;Rect,
          Qstdctrls::TOwnerDrawState State);
</code></pre>
<p>und das an allenstellen wo der Typ auftritt.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857508</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857508</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Wed, 24 Aug 2005 12:42:27 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 13:13:28 GMT]]></title><description><![CDATA[<p>Vielen Dank für die Ideen.</p>
<p>Das habe ich auch zuerst versucht, aber Borland bemeckert dann direkt:</p>
<pre><code>Die Methode ListView1DrawItem, auf die ListView1-&gt;OnDrawItem verweist, enthält eine inkompatible Parameterlist. Soll der Verweis entfernt werden?
</code></pre>
<p>Fällt Jemand denn ein anderer Trick ein?<br />
Vielleicht kann man den Namespace Windows:: unschädlich machen?</p>
<p>Mir fällt akut leider nur ein eigener Event-Handler ein, wobei man dann mit Qt-Nachrichten operieren muss, welche eigentlich keinen Parameter haben und die Borland-Doku dazu schlicht falsch ist ... das würde total abartig und den Rahmen für farbige Listenelemente sprengen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857533</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857533</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Wed, 24 Aug 2005 13:13:28 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 13:20:34 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>und was passiert wenn du statt dem <em>Qstdctrls::</em> dann eben <em>Windows::</em> überall davor schreibst?</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857539</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857539</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Wed, 24 Aug 2005 13:20:34 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Wed, 24 Aug 2005 14:43:09 GMT]]></title><description><![CDATA[<p>Scheint in der Tat ein Bug zu sein.<br />
Benutz doch einfach OnCustomDrawItem, dat geiht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/857626</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/857626</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Wed, 24 Aug 2005 14:43:09 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 09:49:40 GMT]]></title><description><![CDATA[<p>Danke für die tatkräftige Unterstützung.</p>
<p>-- Windows:: mag er auch nicht.</p>
<p>-- Auf OnCustomDrawItem reagiert er - schön.</p>
<p>In einer Doku habe ich gefunden, dass ich nur den &quot;Stift&quot; einfärben muss und schon sollten die Elemente in dieser Farbe gezeichnet werden:</p>
<pre><code class="language-cpp">Canvas-&gt;Pen-&gt;Color= clRed;
</code></pre>
<p>Wird es aber nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858093</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858093</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Thu, 25 Aug 2005 09:49:40 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 09:56:52 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>wenn du das so verwendest, wird auch das Canvas des Forms verwendet.<br />
Das nutzt dir aber nichts, denn du willst den Canvas des ListViews ändern.</p>
<pre><code class="language-cpp">Sender-&gt;Canvas-&gt;Pen-&gt;Color= clRed;
</code></pre>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858097</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858097</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 25 Aug 2005 09:56:52 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 10:54:10 GMT]]></title><description><![CDATA[<p>Danke, aber mein Sender hat die Eigentschaft Canvas nicht:</p>
<pre><code class="language-cpp">void __fastcall TForm1::ListView1CustomDrawItem(TCustomViewControl *Sender,
      TCustomViewItem *Item, TCanvas *Canvas, const TRect &amp;Rect,
      TCustomDrawState State, TCustomDrawStage Stage, bool &amp;DefaultDraw)
{

}
</code></pre>
<p>Langsam bereue ich es wirklich, dass ich CLX statt VCL verwendet habe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858135</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858135</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Thu, 25 Aug 2005 10:54:10 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 11:33:57 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>in der VCL hat TCustomListView die Eigenschaft Canvas...<br />
aber auch kein Problem, du must statt Sender eben direkt das ListView nehmen, wie es als Control heißt.</p>
<pre><code class="language-cpp">ListView1-&gt;Canvas-&gt;Pen-&gt;Color= clRed;
</code></pre>
<p>/Edit : Braunstein : Ja... warum einfach wenns auch umständlich geht? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858158</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858158</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 25 Aug 2005 11:33:57 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 11:27:58 GMT]]></title><description><![CDATA[<p>Das Canvas steht doch als Parameter in der Funktion ListView1CustomDrawItem. Nimm doch einfach das.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858183</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858183</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Thu, 25 Aug 2005 11:27:58 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 11:38:50 GMT]]></title><description><![CDATA[<p>Hatte ich zuerst (s.o.) gemacht, das erzeugt keine Veränderung in der Farbe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858195</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858195</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Thu, 25 Aug 2005 11:38:50 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 11:51:58 GMT]]></title><description><![CDATA[<p>Welche Farbe willst du denn ändern? Pen ist ja eigentlich für Linien o.ä. zuständig. Für Schriften wäre ja eher Font-&gt;Color da und für den Hintergrund Brush-&gt;Color.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858206</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Thu, 25 Aug 2005 11:51:58 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 12:27:06 GMT]]></title><description><![CDATA[<p>Ich möchte ursprünglich den Hintergrund rot machen, es wäre auch ok, wenn die Schrift rot machen könnte.</p>
<pre><code class="language-cpp">Canvas-&gt;Font-&gt;Color= clGreen;
Canvas-&gt;Brush-&gt;Color= clYellow;
</code></pre>
<p>Bringt aber auch keinen Effekt.<br />
Ich habe zur Sicherheit mal OnDrawItem und OnDrawSubItem damit bestückt, auch kein Ergebnis.</p>
<p>Bei der VCL funktioniert das so oder muss man dann nicht nur die Zeichenfarbe sondern auch dann selbst die Kästchen malen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858253</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Thu, 25 Aug 2005 12:27:06 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 12:36:14 GMT]]></title><description><![CDATA[<p>Bei einer ListBox müsste man das Kästchen selber malen. Wie das bei einer ListView und CustomOwnerDraw ist weiss ich nicht.<br />
Du hast ja alle Infos um dein Kästchen selber zu malen (z.Bsp. mit FillRect), also machs doch einfach.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858268</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858268</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Thu, 25 Aug 2005 12:36:14 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 13:08:53 GMT]]></title><description><![CDATA[<p>Danke, das funktioniert.</p>
<p>Leider ist das sehr unpraktisch, da ich dann die gesamten TListItems mit ihren ganzen Funktionen und Erscheinungsformen nachempfinden müsste.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858300</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858300</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Thu, 25 Aug 2005 13:08:53 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Thu, 25 Aug 2005 13:28:55 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Hast Du das schon probiert :</p>
<pre><code class="language-cpp">void __fastcall TForm1::ListView1CustomDrawItem(TCustomListView *Sender, TListItem *Item, TCustomDrawState State, bool &amp;DefaultDraw)
{
Sender-&gt;Canvas-&gt;Font-&gt;Color  = clBlack;
Sender-&gt;Canvas-&gt;Brush-&gt;Color = clRed;
}
</code></pre>
<p>Bei VCL-Projekten funktioniert es.<br />
<strong>OwnerDraw ist false</strong></p>
<p>Nash</p>
]]></description><link>https://www.c-plusplus.net/forum/post/858325</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/858325</guid><dc:creator><![CDATA[Nash]]></dc:creator><pubDate>Thu, 25 Aug 2005 13:28:55 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Mon, 29 Aug 2005 09:08:08 GMT]]></title><description><![CDATA[<p>Bei CLX hat Sender leider nicht die Eigentschaft Canvas nicht.</p>
<p>In was muss ich das casten?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/860498</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/860498</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Mon, 29 Aug 2005 09:08:08 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Mon, 29 Aug 2005 09:18:06 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>wie in diesem Thread auf Seite 2 bereits beschrieben ist, ist in der CLX die Canvas-Fläche ein Extra-Parameter der Events.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/860501</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/860501</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 29 Aug 2005 09:18:06 GMT</pubDate></item><item><title><![CDATA[Reply to TListView Einträge farbig machen on Tue, 30 Aug 2005 06:36:11 GMT]]></title><description><![CDATA[<p>Wie auch bereits im Thread beschrieben, bringt die Manipulation des Canvas-Parameter keine Änderung.</p>
<p>Ich glaube, wie drehen uns im Kreis.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/861075</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/861075</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Tue, 30 Aug 2005 06:36:11 GMT</pubDate></item></channel></rss>