<?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[OnMouseOut TListColumn]]></title><description><![CDATA[<p>Wenn die Maus die ColumnHeader der ListView1 verlässt soll was passieren.</p>
<p>Bei einer GroupBox löse ich das so... (Funktioniert auch bei der ListView)</p>
<pre><code class="language-cpp">void __fastcall TForm1::OnMouseOut(TMessage &amp;Message)
{
  if( ((TGroupBox *)Message.LParam) == GroupBox1)
  {
   //Mach was, wenn die Maus die GroupBox1 verlässt
  }
}
</code></pre>
<p>Nur leider funktioniert es bei ColumnHeadern meiner ListView nicht.</p>
<p>Nur wieso ???</p>
<p>==&gt;Eisbeer&lt;==</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/206894/onmouseout-tlistcolumn</link><generator>RSS for Node</generator><lastBuildDate>Sat, 25 Apr 2026 20:51:45 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/206894.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 01 Mar 2008 12:47:46 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to OnMouseOut TListColumn on Sat, 01 Mar 2008 12:47:46 GMT]]></title><description><![CDATA[<p>Wenn die Maus die ColumnHeader der ListView1 verlässt soll was passieren.</p>
<p>Bei einer GroupBox löse ich das so... (Funktioniert auch bei der ListView)</p>
<pre><code class="language-cpp">void __fastcall TForm1::OnMouseOut(TMessage &amp;Message)
{
  if( ((TGroupBox *)Message.LParam) == GroupBox1)
  {
   //Mach was, wenn die Maus die GroupBox1 verlässt
  }
}
</code></pre>
<p>Nur leider funktioniert es bei ColumnHeadern meiner ListView nicht.</p>
<p>Nur wieso ???</p>
<p>==&gt;Eisbeer&lt;==</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1466017</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466017</guid><dc:creator><![CDATA[Eisbeer]]></dc:creator><pubDate>Sat, 01 Mar 2008 12:47:46 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Sat, 01 Mar 2008 13:51:10 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Verrätst du uns auch was nicht funktioniert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1466037</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466037</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Sat, 01 Mar 2008 13:51:10 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Sat, 01 Mar 2008 13:52:44 GMT]]></title><description><![CDATA[<p>Eisbeer schrieb:</p>
<blockquote>
<p>Wenn die Maus die ColumnHeader der ListView1 verlässt soll was passieren.</p>
</blockquote>
<p>Müsste lauten:</p>
<p>Wenn die Maus über den ColumnHeader der ListView1 ist soll was passieren.</p>
<p>==&gt;Eisbeer&lt;==</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1466040</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466040</guid><dc:creator><![CDATA[Eisbeer]]></dc:creator><pubDate>Sat, 01 Mar 2008 13:52:44 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Sat, 01 Mar 2008 16:44:36 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void __fastcall TForm1::OnMouseOver(TMessage &amp;Message)
{
  if( ((TListColumn *)Message.LParam) == XXXXXXX)
  {
   //Mach was, wenn die Maus über einem der ListViewColumns ist
  }
}
</code></pre>
<p>Ich habe 5 Colums angelegt.</p>
<pre><code class="language-cpp">TListColumn *MeinLinkesColumn;
MeinLinkesColumn = Form1-&gt;ListView1-&gt;Columns-&gt;Add();
MeinLinkesColumn-&gt;Width = 73;
MeinLinkesColumn-&gt;Caption = &quot;Start Zeit&quot;;
MeinLinkesColumn-&gt;Tag = 0;
</code></pre>
<p>Wie kann ich feststellen ob die Maus nun über einer Zeilenüberschrift ist ?</p>
<p>Wenn die Maus die ListView verlässt soll eine Aktion ausgelöst werden</p>
<pre><code class="language-cpp">if( ((TListColumn *)Tag) == 0)
{
      //Form1-&gt;Caption = &quot;Raus&quot;;
      Form1-&gt;Timer2-&gt;Enabled = false;
      Form1-&gt;GroupBox3-&gt;Visible = false;
}
</code></pre>
<p>Wenn der Maus-Zeiger nun auf der Spalten-Überschrift mit 'Tag-&gt;0' ist, wird die Aktion ausgelöst.</p>
<p>Wenn bei der If-Anweisung aus if( ((TListColumn *)Tag) == <strong>0</strong>)<br />
if( ((TListColumn *)Tag) == <strong>1</strong>) wird, bekomme ich Compiler-Fehler E2034: Konvertierung von 'int' nach 'TListColumn *' nicht möglich.</p>
<p>==&gt;Eisbeer&lt;==</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1466169</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466169</guid><dc:creator><![CDATA[Eisbeer]]></dc:creator><pubDate>Sat, 01 Mar 2008 16:44:36 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Mon, 03 Mar 2008 08:42:21 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Eisbeer schrieb:</p>
<blockquote>
<p>Wie kann man eine Aktion auslösen, wenn die Maus über einer TListColumn (Spaltenüberschrift) ist ?</p>
<p>Das Ereignis OnMouseOver der TListView wird bei den Columns der ListView nicht ausgelöst.</p>
</blockquote>
<p>Da müßtest du wohl von TListView eine neue Komponente ableiten und dort direkt die Windows-Message abfangen und verarbeiten. <a href="http://bcb-tutorial.c-plusplus.net/komponentenentwicklung/komponenten7.html" rel="nofollow">Hier</a> wird das Prinzip erklärt.</p>
<blockquote>
<p>Jede Column heit eine Nummer im Tag zugewiesen bekommen (1-5)</p>
<p>Durch eine SWITCH-Anweisung</p>
<pre><code class="language-cpp">switch ((TListColumn *)Tag)
</code></pre>
<p>Meint der Compiler, dass der Auswahlausdruck einer Switch-Anweisung ganzzahlig sein muss.</p>
<p>Die Tags 1-5 sind doch ganzzahlig.....</p>
</blockquote>
<p>Du kannst nicht einfach die Tags, in denen die Indexe der Spalten stehen, in TListColumn casten (wenn du nicht einen C-Cast sondern den eigentlich angebrachten static_cast genommen hättest hätte dir der Compiler das auch gesagt). Den Cast könntest du nur machen wenn in den Tags die Adressen der TListColumn-Objekte stehen würden.<br />
Aber das brauchst du auch nicht. Mit dem Index in den Tags kannst du doch bereits über die Eigenschaft TListView::Columns das Spaltenobjekt abfragen, wenn das korrekte TListView bereits feststeht.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1467114</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1467114</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 03 Mar 2008 08:42:21 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Tue, 04 Mar 2008 13:08:06 GMT]]></title><description><![CDATA[<p>Wenn man eine TListView ableiten, wie kommt man dann an die WindowMessages der Columns ??</p>
<p>==&gt;Eisbeer&lt;==</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1467972</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1467972</guid><dc:creator><![CDATA[Eisbeer]]></dc:creator><pubDate>Tue, 04 Mar 2008 13:08:06 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Tue, 04 Mar 2008 15:36:43 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>In dem von mir verlinktem Artikel steht wie man generell Windows-Messages abfängt und verarbeitet. Welche genau du in deinem Fall abfangen must kannst du sicher mit einer Recherche in der MSDN oder im WinAPI-Forum herausfinden.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1468120</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1468120</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 04 Mar 2008 15:36:43 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Thu, 06 Mar 2008 19:40:17 GMT]]></title><description><![CDATA[<p>Wenn ich von TListView eine neue Komponente ableite und dort die WindowsMessages verarbeite, verarbeite ich die der ListView und nicht die der Columns, da ich TListColumn nicht ableiten kann.</p>
<p>Kann mir jemand sagen, wie ich eine neue TListColumn ableiten kann ?</p>
<p>==&gt;Eisbeer&lt;==</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1469647</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1469647</guid><dc:creator><![CDATA[Eisbeer]]></dc:creator><pubDate>Thu, 06 Mar 2008 19:40:17 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Thu, 06 Mar 2008 20:05:02 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Es nützt dir nichts von TListColumn abzuleiten, du könntest Instanzen der neuen Klasse ja sowieso nicht einem TListView zuweisen.</p>
<p>Das Ableiten von TListView ist schon korrekt, und du must auch die üblichen Mouse-Messages verarbeiten. Bei jeder Message must du eben berechnen ob die Position innerhalb der Titelleiste war und welche Spalte betroffen ist (alles andere gibst du an die verhandene Behandlung durch TListView weiter). Dann kannst du entsprechend deinen Vorhaben mit der Titelleiste agieren.</p>
<p>Ja das ist nicht leicht und du solltest überlegen ob es den Aufwand wert ist.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1469662</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1469662</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 06 Mar 2008 20:05:02 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Fri, 07 Mar 2008 06:23:37 GMT]]></title><description><![CDATA[<blockquote>
<p>Es nützt dir nichts von TListColumn abzuleiten, du könntest Instanzen der neuen Klasse ja sowieso nicht einem TListView zuweisen.</p>
</blockquote>
<p>MyTListColumn *MeinColumn;</p>
<p>Wie sieht es mit THeaderControl aus? Kann man das nicht an Stelle von TListColumn zuweisen ?</p>
<p>THeaderControl *MeinColumn;</p>
<p>==&gt;**[C++ Fehler] Unit1.cpp(28): E2034 Konvertierung von 'TListColumn <em>' nach 'THeaderControl <em>' nicht möglich</em></em>&lt;==</p>
<p>==&gt;Eisbeer&lt;==</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1469761</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1469761</guid><dc:creator><![CDATA[Eisbeer]]></dc:creator><pubDate>Fri, 07 Mar 2008 06:23:37 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Fri, 07 Mar 2008 08:28:29 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Der Compiler beantwortet deine Frage doch schon.<br />
Vielleicht solltest du aufhören rumzuraten und statt desen lieber auf das hören was wir schreiben.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1469807</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1469807</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Fri, 07 Mar 2008 08:28:29 GMT</pubDate></item><item><title><![CDATA[Reply to OnMouseOut TListColumn on Sat, 08 Mar 2008 06:30:40 GMT]]></title><description><![CDATA[<p>Guten Morgen...</p>
<p>Im WIN-API-Forum wurde ich darauf aufmerksam gemacht, die Nachrichten-Schleife des Header-Controls zu verarbeiten.</p>
<p><a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-207241-and-highlight-is-eisbeer.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-207241-and-highlight-is-eisbeer.html</a></p>
<p>Könntes mir jemand beim Einbinden in BcB helfen ?</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/7971">@akari</a>: Ich höre doch meistens auf das, was ihr mir vorschlagt<br />
...Mann kann durch verschiedene Wege ans Ziel kommen... TListView ableiten / Win-API benutzen...</p>
<p>==&gt;Eisbeer&lt;==</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1470390</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1470390</guid><dc:creator><![CDATA[Eisbeer]]></dc:creator><pubDate>Sat, 08 Mar 2008 06:30:40 GMT</pubDate></item></channel></rss>