<?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[WM_NOTIFY mit beliebiger ControlID (aus Membervariable)?]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich habe in meiner Anwendung viele CFormviews mit CListCtrl.<br />
Aus dem Grund sind viele funktionen nur Copy &amp; Paste und deswegen mache ich jetzt eine Basisklasse dafür. <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>Jetzt habe ich mit den Notifies aber ein Problem.</p>
<p>Bisher sah das so aus:<br />
[cpp]BEGIN_MESSAGE_MAP(COrteView, CFormView)<br />
//{{AFX_MSG_MAP(COrteView)<br />
ON_NOTIFY(HDN_ITEMCHANGED, 0, OnItemchangedLscOrte)<br />
ON_NOTIFY(LVN_KEYDOWN, <strong>IDC_LSC_ORTE</strong>, OnKeydownLscOrte)<br />
ON_NOTIFY(NM_CLICK, IDC_LSC_ORTE, OnClickLscOrte)<br />
ON_NOTIFY(LVN_DELETEITEM, IDC_LSC_ORTE, OnDeleteitemLscOrte)<br />
//}}AFX_MSG_MAP<br />
END_MESSAGE_MAP()<br />
[/cpp]<br />
Und das in JEDEM View. Deswegen wollte ich das so machen:<br />
[cpp]BEGIN_MESSAGE_MAP(CBasisLscView, CBasisView)<br />
//{{AFX_MSG_MAP(CBasisLscView)<br />
ON_NOTIFY(HDN_ITEMCHANGED, 0, OnItemchangedLsc) // Der funktioniert!<br />
ON_NOTIFY(LVN_KEYDOWN, <strong>m_nLscID</strong>, OnKeydownLsc) // Und der Rest nicht mehr<br />
ON_NOTIFY(NM_CLICK, m_nLscID, OnClickLsc)<br />
ON_NOTIFY(LVN_DELETEITEM, m_nLscID, OnDeleteitemLsc)<br />
//}}AFX_MSG_MAP<br />
END_MESSAGE_MAP()<br />
[/cpp]<br />
Und nun bekomme ich die folgenden Fehlermeldungen:</p>
<blockquote>
<p>D:\Realisierung\Views\Basis\BasisLscView.cpp(44) : error C2440: 'type cast' : 'unsigned int CBasisLscView::<em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(44) : error C2440: 'type cast' : 'unsigned int CBasisLscView::</em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(44) : error C2440: 'initializing' : 'void (__thiscall CCmdTarget::<em>)(void)' kann nicht in 'unsigned int' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(45) : error C2440: 'type cast' : 'unsigned int CBasisLscView::</em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(45) : error C2440: 'type cast' : 'unsigned int CBasisLscView::<em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(45) : error C2440: 'initializing' : 'void (__thiscall CCmdTarget::</em>)(void)' kann nicht in 'unsigned int' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(46) : error C2440: 'type cast' : 'unsigned int CBasisLscView::<em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(46) : error C2440: 'type cast' : 'unsigned int CBasisLscView::</em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(46) : error C2440: 'initializing' : 'void (__thiscall CCmdTarget::*)(void)' kann nicht in 'unsigned int' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
Fehler beim Ausführen von cl.exe.</p>
</blockquote>
<p>In der MSDN habe ich nichts hilfreiches gefunden und hartes Casten geht auch nicht. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /><br />
Geht sowas nicht oder muss ich das anders machen?</p>
<p>Was meint der überhaupt mit: 'unsigned int CBasisLscView::*'? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Bitte helft mir auf die Sprünge <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/78119/wm_notify-mit-beliebiger-controlid-aus-membervariable</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Apr 2026 01:34:32 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/78119.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 28 Jun 2004 09:14:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to WM_NOTIFY mit beliebiger ControlID (aus Membervariable)? on Mon, 28 Jun 2004 13:17:38 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich habe in meiner Anwendung viele CFormviews mit CListCtrl.<br />
Aus dem Grund sind viele funktionen nur Copy &amp; Paste und deswegen mache ich jetzt eine Basisklasse dafür. <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>Jetzt habe ich mit den Notifies aber ein Problem.</p>
<p>Bisher sah das so aus:<br />
[cpp]BEGIN_MESSAGE_MAP(COrteView, CFormView)<br />
//{{AFX_MSG_MAP(COrteView)<br />
ON_NOTIFY(HDN_ITEMCHANGED, 0, OnItemchangedLscOrte)<br />
ON_NOTIFY(LVN_KEYDOWN, <strong>IDC_LSC_ORTE</strong>, OnKeydownLscOrte)<br />
ON_NOTIFY(NM_CLICK, IDC_LSC_ORTE, OnClickLscOrte)<br />
ON_NOTIFY(LVN_DELETEITEM, IDC_LSC_ORTE, OnDeleteitemLscOrte)<br />
//}}AFX_MSG_MAP<br />
END_MESSAGE_MAP()<br />
[/cpp]<br />
Und das in JEDEM View. Deswegen wollte ich das so machen:<br />
[cpp]BEGIN_MESSAGE_MAP(CBasisLscView, CBasisView)<br />
//{{AFX_MSG_MAP(CBasisLscView)<br />
ON_NOTIFY(HDN_ITEMCHANGED, 0, OnItemchangedLsc) // Der funktioniert!<br />
ON_NOTIFY(LVN_KEYDOWN, <strong>m_nLscID</strong>, OnKeydownLsc) // Und der Rest nicht mehr<br />
ON_NOTIFY(NM_CLICK, m_nLscID, OnClickLsc)<br />
ON_NOTIFY(LVN_DELETEITEM, m_nLscID, OnDeleteitemLsc)<br />
//}}AFX_MSG_MAP<br />
END_MESSAGE_MAP()<br />
[/cpp]<br />
Und nun bekomme ich die folgenden Fehlermeldungen:</p>
<blockquote>
<p>D:\Realisierung\Views\Basis\BasisLscView.cpp(44) : error C2440: 'type cast' : 'unsigned int CBasisLscView::<em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(44) : error C2440: 'type cast' : 'unsigned int CBasisLscView::</em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(44) : error C2440: 'initializing' : 'void (__thiscall CCmdTarget::<em>)(void)' kann nicht in 'unsigned int' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(45) : error C2440: 'type cast' : 'unsigned int CBasisLscView::</em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(45) : error C2440: 'type cast' : 'unsigned int CBasisLscView::<em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(45) : error C2440: 'initializing' : 'void (__thiscall CCmdTarget::</em>)(void)' kann nicht in 'unsigned int' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(46) : error C2440: 'type cast' : 'unsigned int CBasisLscView::<em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(46) : error C2440: 'type cast' : 'unsigned int CBasisLscView::</em>' kann nicht in 'unsigned short' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
D:\Realisierung\Views\Basis\BasisLscView.cpp(46) : error C2440: 'initializing' : 'void (__thiscall CCmdTarget::*)(void)' kann nicht in 'unsigned int' konvertiert werden<br />
Diese Konvertierung ist eine gueltige Standardkonvertierung, die implizit oder mit dem static_cast-Operator oder mit einer Typumwandlung im C- oder Funktionsformat durchgefuehrt wird<br />
Fehler beim Ausführen von cl.exe.</p>
</blockquote>
<p>In der MSDN habe ich nichts hilfreiches gefunden und hartes Casten geht auch nicht. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /><br />
Geht sowas nicht oder muss ich das anders machen?</p>
<p>Was meint der überhaupt mit: 'unsigned int CBasisLscView::*'? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Bitte helft mir auf die Sprünge <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/549206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/549206</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 28 Jun 2004 13:17:38 GMT</pubDate></item><item><title><![CDATA[Reply to WM_NOTIFY mit beliebiger ControlID (aus Membervariable)? on Tue, 29 Jun 2004 07:41:44 GMT]]></title><description><![CDATA[<p>Schieb!</p>
<p>Habe ich es schlecht beschrieben oder geht es nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/549695</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/549695</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Tue, 29 Jun 2004 07:41:44 GMT</pubDate></item><item><title><![CDATA[Reply to WM_NOTIFY mit beliebiger ControlID (aus Membervariable)? on Wed, 30 Jun 2004 06:23:52 GMT]]></title><description><![CDATA[<p>Hat sich erledigt, habe wieder was neues gelernt und deswegen geht das nicht, was ich vorhatte. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Muss ich die MessageMap doch für jede abgeleitete Klasse kopieren - so ein Blödsinn...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/550116</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/550116</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Wed, 30 Jun 2004 06:23:52 GMT</pubDate></item></channel></rss>