<?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[Wo ist die Schriftart]]></title><description><![CDATA[<p>Moin, moin,</p>
<p>mit dem VS2005 Resourceneditor erstelle ich einen Dialog. Unter anderem enthält das *.rc Script fogende Zeile:</p>
<pre><code class="language-cpp">FONT	9, &quot;MS Shell Dlg&quot;
</code></pre>
<p>der Dialog wir erstellt soweit so gut. Ich hab mir dann eine kleine Funktion geschrieben um den Schriftnamen für ein Fensterhandle zu ermittelt. Die Funktion ermittelt mir dann als Namen: &quot;MS Shell Dlg 2&quot; was für mich soweit auch ok ist.<br />
Jetzt habe ich eine andere Funktion geschrieben um den Standard Dialog &quot;Choose Font&quot; aufzurufen. Was mich jetzt überrascht ist, daß diese Schriftart nicht in der Auswahlliste auftaucht. Wie ist das möglich? Hier mein Funktionsaufruf:</p>
<pre><code class="language-cpp">boolean DialogFontSelection(char *headline){

	CHOOSEFONT		cf;

	memset(&amp;cf, 0, sizeof(cf));
	cf.lStructSize = sizeof(CHOOSEFONT);
	cf.hwndOwner = NULL;
	cf.hDC = NULL;
	cf.lpLogFont = &amp;font.pop_logfont;			//extern definiert
	cf.iPointSize = 0;
	cf.Flags = CF_INITTOLOGFONTSTRUCT | CF_BOTH | CF_LIMITSIZE | CF_ENABLEHOOK;
	cf.rgbColors = 0;
	cf.lCustData = 0;
	cf.lpfnHook =  (LPCCHOOKPROC)DialogFontSelection_EventHandler;
	cf.lpTemplateName = headline;
	cf.hInstance = NULL;
	cf.lpszStyle = NULL;
	cf.nFontType = 0;	
	cf.nSizeMin = 6;
	cf.nSizeMax = 18;
	if(ChooseFont(&amp;cf) != 0){
		return TRUE;
	}else{
		return FALSE;
	}
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/240563/wo-ist-die-schriftart</link><generator>RSS for Node</generator><lastBuildDate>Mon, 06 Apr 2026 08:53:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/240563.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 08 May 2009 08:26:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 08:26:06 GMT]]></title><description><![CDATA[<p>Moin, moin,</p>
<p>mit dem VS2005 Resourceneditor erstelle ich einen Dialog. Unter anderem enthält das *.rc Script fogende Zeile:</p>
<pre><code class="language-cpp">FONT	9, &quot;MS Shell Dlg&quot;
</code></pre>
<p>der Dialog wir erstellt soweit so gut. Ich hab mir dann eine kleine Funktion geschrieben um den Schriftnamen für ein Fensterhandle zu ermittelt. Die Funktion ermittelt mir dann als Namen: &quot;MS Shell Dlg 2&quot; was für mich soweit auch ok ist.<br />
Jetzt habe ich eine andere Funktion geschrieben um den Standard Dialog &quot;Choose Font&quot; aufzurufen. Was mich jetzt überrascht ist, daß diese Schriftart nicht in der Auswahlliste auftaucht. Wie ist das möglich? Hier mein Funktionsaufruf:</p>
<pre><code class="language-cpp">boolean DialogFontSelection(char *headline){

	CHOOSEFONT		cf;

	memset(&amp;cf, 0, sizeof(cf));
	cf.lStructSize = sizeof(CHOOSEFONT);
	cf.hwndOwner = NULL;
	cf.hDC = NULL;
	cf.lpLogFont = &amp;font.pop_logfont;			//extern definiert
	cf.iPointSize = 0;
	cf.Flags = CF_INITTOLOGFONTSTRUCT | CF_BOTH | CF_LIMITSIZE | CF_ENABLEHOOK;
	cf.rgbColors = 0;
	cf.lCustData = 0;
	cf.lpfnHook =  (LPCCHOOKPROC)DialogFontSelection_EventHandler;
	cf.lpTemplateName = headline;
	cf.hInstance = NULL;
	cf.lpszStyle = NULL;
	cf.nFontType = 0;	
	cf.nSizeMin = 6;
	cf.nSizeMax = 18;
	if(ChooseFont(&amp;cf) != 0){
		return TRUE;
	}else{
		return FALSE;
	}
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1707558</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707558</guid><dc:creator><![CDATA[*Helmut*]]></dc:creator><pubDate>Fri, 08 May 2009 08:26:06 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 09:35:48 GMT]]></title><description><![CDATA[<p>&quot;MS Shell Dlg&quot; ist kein echter Font. Es wird je nach Windows Version auf einen internen Font gemapped.<br />
<a href="http://support.microsoft.com/kb/282187" rel="nofollow">http://support.microsoft.com/kb/282187</a><br />
<a href="http://msdn.microsoft.com/en-us/library/dd374112(VS.85).aspx" rel="nofollow">http://msdn.microsoft.com/en-us/library/dd374112(VS.85).aspx</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707618</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707618</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 08 May 2009 09:35:48 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 10:24:59 GMT]]></title><description><![CDATA[<p>Ja danke, ich habs mitlerweile per Registrysuche gefunden:</p>
<pre><code class="language-cpp">HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes\MS Shell Dlg 2
</code></pre>
<p>zeigt bei mit auf &quot;Tahoma&quot;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707663</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707663</guid><dc:creator><![CDATA[*Helmut*]]></dc:creator><pubDate>Fri, 08 May 2009 10:24:59 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 11:21:46 GMT]]></title><description><![CDATA[<p>Ich habe jetzt noch eine Frage die mit diesem Thema verwand ist, daher möcht ich keinen neuen Thread eröffnen.<br />
Wenn ich nun mein Resourcenscript soweit abänder dass anstatt</p>
<pre><code class="language-cpp">FONT    9, &quot;MS Shell Dlg&quot;
</code></pre>
<p>dort folgendes steht</p>
<pre><code class="language-cpp">FONT    18, &quot;MS Shell Dlg&quot;
</code></pre>
<p>wird der Dialog automatisch mit der richtigen Höhe für z.B. ein Textfeld erzeugt. Ändere ich jedoch zur Laufzeit die Schriftgrösse des Dialogs von 9 auf 18 bleiben die Elemente darin in ihrer ursprünglichen Größe erhalten, d.h. der Text wird von der Höhe her abgeschnitten. Ich glaub irgendwo mal eine Funktion gesehen zu haben wo man das irgendwie skallieren kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707704</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707704</guid><dc:creator><![CDATA[*Helmut*]]></dc:creator><pubDate>Fri, 08 May 2009 11:21:46 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 11:46:10 GMT]]></title><description><![CDATA[<p>Du setzt damit nur den Font des Dialoges und nicht den der Kinder. Du müsstest dann jedes Element einzeln anfassen und ihm den Font setzen und ihn vergrößern.<br />
Der Dialog mit seinen Child-Fenstern wird nur beim Start in den entsprechenden Größen erzeugt und bekommt den gewünschten Font. Dannach gibt es keine automatische Abhängigkeit mehr.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707716</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707716</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 08 May 2009 11:46:10 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 12:43:30 GMT]]></title><description><![CDATA[<p>Ja, danke das war mir bekannt und das habe ich schon mit EnumChildWindows und dem entsprechenen Eventhandler realisiert. Es funktioniert soweit, dass unabhängig vom Dialog, grundsätzlich alle darin enhaltenen Elemente meinen &quot;Einheits&quot;-Font erhalten. Der Dialog ist so ausgelegt, dass beim Event &quot;WM_INITDIALOG&quot; erstmal alle Elemente rechnerisch an die richtige Position gebracht werden. Ebenso wird an dieser Stelle der Font gesetzt. Leider passen die Berechnungen nicht, wenn der Dialog ursprünglich für Fontsize 9 erzeugt und jetzt auf Fontsize 12 vergrössert wird. Hast du da einen Tip für mich wie ich da am geschicktesten vorgehe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707750</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707750</guid><dc:creator><![CDATA[*Helmut*]]></dc:creator><pubDate>Fri, 08 May 2009 12:43:30 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 13:07:34 GMT]]></title><description><![CDATA[<p>Andere Idee: kann man sich nicht eine Kopie des Dialogtemplates (DLGTEMPLATEEX) zur Laufzeit erstellen und dort die Teile für den Font manipulieren und über CreateDialogIndirect dieses manipulierte Template aufrufen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707762</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707762</guid><dc:creator><![CDATA[*Helmut*]]></dc:creator><pubDate>Fri, 08 May 2009 13:07:34 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 13:08:56 GMT]]></title><description><![CDATA[<p>Klar kann man! Macht die MFC auch ;), da gibt es sogar eine Helferklasse dazu.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707765</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707765</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 08 May 2009 13:08:56 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 13:52:13 GMT]]></title><description><![CDATA[<p>Martin Richter schrieb:</p>
<blockquote>
<p>Klar kann man! Macht die MFC auch ;), da gibt es sogar eine Helferklasse dazu.</p>
</blockquote>
<p>Schön, leider weiss ich jetzt nicht wie ich das machen soll. Könntest du mir da weiterhelfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707800</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707800</guid><dc:creator><![CDATA[*Helmut*]]></dc:creator><pubDate>Fri, 08 May 2009 13:52:13 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Fri, 08 May 2009 15:14:53 GMT]]></title><description><![CDATA[<p>Schau in den MFC Sourcecode rein. Schau in die MSDN, dort steht das Layout des Templates beschrieben. IMHO gibt es auf Codeproject auch Code.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707830</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707830</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 08 May 2009 15:14:53 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Sun, 10 May 2009 14:52:02 GMT]]></title><description><![CDATA[<p>Ok, war mit einigen Klimmzügen verbunden die Struktur &quot;DLGTEMPLATEEX&quot; auszuwerten und zu modifizieren aber jetzt gehts. Ist aber schon verwunderlich, dass MS eine Funktion bereitstellt die eine Verwendung der Struktur erlaubt, aber nichts anbietet um mit dieser pseudo Struktur zu arbeiten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1708516</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1708516</guid><dc:creator><![CDATA[*Helmut*]]></dc:creator><pubDate>Sun, 10 May 2009 14:52:02 GMT</pubDate></item><item><title><![CDATA[Reply to Wo ist die Schriftart on Sun, 10 May 2009 15:07:33 GMT]]></title><description><![CDATA[<p>Warum auch? Das Prinzip ist/war ja, dass diese Struktur durch den Ressourcen-Compiler erzeugt wird. Gelsen wird Sie eben von den Dialog-Funktionen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1708523</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1708523</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Sun, 10 May 2009 15:07:33 GMT</pubDate></item></channel></rss>