<?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[listview wie bei mozilla firefox]]></title><description><![CDATA[<p>hi,</p>
<p>wie kann ich mit ownderdraw die downloadliste von mozilla firefox nachmachen?</p>
<p>hier mal der link für diejenigen die keinen firefox benutzen^^:<br />
<a href="http://2.bp.blogspot.com/_60JWcqOL3AI/RiUBqQOd_GI/AAAAAAAAARE/0P_vd_Ovh3w/s1600/firefox%2Bdownload%2Bwindow.PNG" rel="nofollow">http://2.bp.blogspot.com/_60JWcqOL3AI/RiUBqQOd_GI/AAAAAAAAARE/0P_vd_Ovh3w/s1600/firefox%2Bdownload%2Bwindow.PNG</a></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/243051/listview-wie-bei-mozilla-firefox</link><generator>RSS for Node</generator><lastBuildDate>Sat, 04 Apr 2026 09:25:15 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/243051.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 11 Jun 2009 16:18:27 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to listview wie bei mozilla firefox on Thu, 11 Jun 2009 16:18:27 GMT]]></title><description><![CDATA[<p>hi,</p>
<p>wie kann ich mit ownderdraw die downloadliste von mozilla firefox nachmachen?</p>
<p>hier mal der link für diejenigen die keinen firefox benutzen^^:<br />
<a href="http://2.bp.blogspot.com/_60JWcqOL3AI/RiUBqQOd_GI/AAAAAAAAARE/0P_vd_Ovh3w/s1600/firefox%2Bdownload%2Bwindow.PNG" rel="nofollow">http://2.bp.blogspot.com/_60JWcqOL3AI/RiUBqQOd_GI/AAAAAAAAARE/0P_vd_Ovh3w/s1600/firefox%2Bdownload%2Bwindow.PNG</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1725124</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1725124</guid><dc:creator><![CDATA[dr house]]></dc:creator><pubDate>Thu, 11 Jun 2009 16:18:27 GMT</pubDate></item><item><title><![CDATA[Reply to listview wie bei mozilla firefox on Thu, 11 Jun 2009 16:27:35 GMT]]></title><description><![CDATA[<p>wärs nicht einfacher das ganze selbst zu schreiben als ganz neue Fensterklasse mit eigener Prozedur usw?<br />
dann machste ein parent in das dann für jedes element ein child erstellt.<br />
(die childs musste natührlich auch noch schreiben)<br />
die childs haben dann z.B. immer das blau im Hintergrund als bitmap was sie dann laden und den Text und Icons schickste per SendMessage über ne eigene Message.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1725131</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1725131</guid><dc:creator><![CDATA[djwd]]></dc:creator><pubDate>Thu, 11 Jun 2009 16:27:35 GMT</pubDate></item><item><title><![CDATA[Reply to listview wie bei mozilla firefox on Fri, 12 Jun 2009 09:31:33 GMT]]></title><description><![CDATA[<p>Ok hier mal ein erweiterter Denkanstoss in Codeform:</p>
<p>das hier kommt in den Eventhandler deines Parentfensters (falls der Listview ein Child ist und nicht gesubclassed wurde):</p>
<pre><code class="language-cpp">case WM_MEASUREITEM:
		return OwnerDraw_MeasureItem(hWnd, wParam, lParam);
	case WM_DRAWITEM:
		return OwnerDraw_DrawItem(hWnd, wParam, lParam);
</code></pre>
<p>die Funktion sagt dem Listview die Zeilenhöhe und Breite. Hast du mehr als einen Listview kannst du auch auf &quot;CtlID&quot; prüfen</p>
<pre><code class="language-cpp">int OwnerDraw_MeasureItem(HWND hWnd, WPARAM wParam, LPARAM lParam){

	if(((MEASUREITEMSTRUCT FAR *)lParam)-&gt;CtlType == ODT_LISTVIEW){
		((MEASUREITEMSTRUCT FAR *)lParam)-&gt;itemHeight = 23;		//Festlegung der Zeilenhöhe
		((MEASUREITEMSTRUCT FAR *)lParam)-&gt;itemWidth = 45;		//Festlegung der Zeilenbreite 
		return 1;
	}
	return 0;
}
</code></pre>
<p>ok hier machen wir den eigentlichen Kram für die Ausgabe, Anordnen des Textes und der Icons. Mit ImageList_Draw, DrawText, DrawIconEx, DrawState kannste jetzt die ausgabe von Text und Icon realisieren</p>
<pre><code class="language-cpp">int OwnerDraw_DrawItem(HWND hWnd, WPARAM wParam, LPARAM lParam){

	if(((DRAWITEMSTRUCT FAR *)lParam)-&gt;CtlType == ODT_LISTVIEW){

/*
so hier haste das DRAWITEMSTRUCT, damit sollte soweit alles klar sein

typedef struct tagDRAWITEMSTRUCT{ 
    UINT  CtlType; 
    UINT  CtlID; 
    UINT  itemID; 
    UINT  itemAction; 
    UINT  itemState; 
    HWND  hwndItem; 
    HDC   hDC; 
    RECT  rcItem; 
    DWORD itemData; 
} DRAWITEMSTRUCT; 

*/

		return 1;
	}
	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1725470</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1725470</guid><dc:creator><![CDATA[*guggstdu*]]></dc:creator><pubDate>Fri, 12 Jun 2009 09:31:33 GMT</pubDate></item></channel></rss>