<?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[Verschiedene Dialogelemente per Preprozessor]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab einen recht üppigen Dialog, der viele Buttons, Checkboxen usw enthält. Jetzt möchte ich per Preprozessor eine abgespeckte Variante erzeugen, die dann nur noch ein paar wenige Buttons enthält.<br />
Wozu? Die SW soll für Entwickler alles anzeigen, für User nur noch das notwendige.<br />
Wie kann ich per #define einen Button erzeugen, bzw nicht erzeugen lassen?<br />
Problem ist, dass das Rescourcefile ja vom Visual Studio selbst erzeugt wird!</p>
<p>Gruss,<br />
Hansi</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/150986/verschiedene-dialogelemente-per-preprozessor</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Jul 2026 22:34:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/150986.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 22 Jun 2006 06:26:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 06:26:07 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab einen recht üppigen Dialog, der viele Buttons, Checkboxen usw enthält. Jetzt möchte ich per Preprozessor eine abgespeckte Variante erzeugen, die dann nur noch ein paar wenige Buttons enthält.<br />
Wozu? Die SW soll für Entwickler alles anzeigen, für User nur noch das notwendige.<br />
Wie kann ich per #define einen Button erzeugen, bzw nicht erzeugen lassen?<br />
Problem ist, dass das Rescourcefile ja vom Visual Studio selbst erzeugt wird!</p>
<p>Gruss,<br />
Hansi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082622</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082622</guid><dc:creator><![CDATA[hschon]]></dc:creator><pubDate>Thu, 22 Jun 2006 06:26:07 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 06:30:56 GMT]]></title><description><![CDATA[<p>Wie wäre es, wenn du einfach die Controls mit ShowWindow versteckst? <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1082626</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082626</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Thu, 22 Jun 2006 06:30:56 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 06:36:49 GMT]]></title><description><![CDATA[<p>ich könnte alle nicht benötigten Elemente per Menüauswahl so zur Laufzeit abschalten, dann kann aber jeder x-beliebige User die Entwickler-Ansicht reaktivieren, was eigentlich nicht gewünscht ist.<br />
Oder ich schalte erst mal alle aus, und per #define nur die gewünschten wieder ein, das müsste eigentlich gehen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082627</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082627</guid><dc:creator><![CDATA[hschon]]></dc:creator><pubDate>Thu, 22 Jun 2006 06:36:49 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 06:55:54 GMT]]></title><description><![CDATA[<p>hschon schrieb:</p>
<blockquote>
<p>ich könnte alle nicht benötigten Elemente per Menüauswahl so zur Laufzeit abschalten, dann kann aber jeder x-beliebige User die Entwickler-Ansicht reaktivieren, was eigentlich nicht gewünscht ist.<br />
Oder ich schalte erst mal alle aus, und per #define nur die gewünschten wieder ein, das müsste eigentlich gehen...</p>
</blockquote>
<p>Musst das ja dem Nutzer nicht unbedingt zugänglich machen. Wenn Du die Einstellungen (also welche Dialogelemente sichtbar sind und welche nicht) über ein Dialogfeld abfragst, so lass das Dialogfeld doch nur für einen bestimmten Nutzer (z.B. Admin) aufrufbar sein. Den Namen hast Du ja beim Login, für alle anderen disablest Du diesen Menüpunkt.<br />
Variante 2 wäre die mit den Präprozessordirektiven. Steuer das doch einfach über Debug- und Release-Version. Über</p>
<pre><code class="language-cpp">#ifdef _DEBUG
//hier Code zum Aktivieren aller Dialogelemente einfügen
#endif //_DEBUG
</code></pre>
<p>dürfte das funktionieren. In der Debugversion, die üblicherweise nur der Entwickler hat sind dann alle Dialogelemente dargestellt. Der Endnutzer bekommt die Release. In diesem Fall wird der obenstehende Codeabschnitt nicht mit kompiliert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082639</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Thu, 22 Jun 2006 06:55:54 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 07:01:48 GMT]]></title><description><![CDATA[<p>...jetzt wäre nur noch interessant, WIE ich den Button wieder &quot;visible&quot; bekomm...</p>
<p>Ein Button hängt so in der MessageMap:</p>
<pre><code>ON_BN_CLICKED(IDC_BUTTON_Measurement, OnBnClickedButtonMeasurement)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1082645</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082645</guid><dc:creator><![CDATA[hschon]]></dc:creator><pubDate>Thu, 22 Jun 2006 07:01:48 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 07:14:38 GMT]]></title><description><![CDATA[<p>Mit ShowWindow!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082659</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082659</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Thu, 22 Jun 2006 07:14:38 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 07:23:26 GMT]]></title><description><![CDATA[<p>Fuer ShowWindow brauch ich eine Klasse.<br />
Bisher hab ich den Button nur in der MessageMap bekannt gemacht, die beim Event dann eben die angegebene Funktion aufruft.<br />
Kannste mir mal ein &quot;ShowWindow&quot;-Beispiel schreiben? -wäre hilfreich !</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082665</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082665</guid><dc:creator><![CDATA[hschon]]></dc:creator><pubDate>Thu, 22 Jun 2006 07:23:26 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 07:26:32 GMT]]></title><description><![CDATA[<p>Die Klasse ist CWnd...<br />
CWnd::ShowWindow()</p>
<p>Schau in der Hilfe, dort ist ein Artikel drin.</p>
<p>ShowWindow() markieren und dann F1 druecken, dort CWnd::ShowWindow() auswaehlen. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1082667</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082667</guid><dc:creator><![CDATA[tH0RsT3n]]></dc:creator><pubDate>Thu, 22 Jun 2006 07:26:32 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 07:31:52 GMT]]></title><description><![CDATA[<p>GetDlgItem(IDC_BUTTON_Measurement)-&gt;ShowWindow(SW_SHOW); // oder SW_HIDE</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082676</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082676</guid><dc:creator><![CDATA[jencas]]></dc:creator><pubDate>Thu, 22 Jun 2006 07:31:52 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 07:54:59 GMT]]></title><description><![CDATA[<p>OK, es sieht ganz gut aus (allerdings konnte ich mit der Microsoft-Doku nicht viel anfangen! Die Aussage &quot;Sets the visibility state of the window&quot; führt doch völlig in die Irre -oder seit wann ist ein Button ein Window?!)<br />
Am besten sind immer noch Beispiele.</p>
<p>Damit's andere einfacher haben:</p>
<p>1. Button als Objekt in der Klasse CFormView anlegen:<br />
CButton m_measurement;</p>
<p>2. dann z.B in OnInitialUpdate den Button &quot;visible&quot; schalten:<br />
m_measurement.ShowWindow(TRUE);</p>
<p>Danke euch allen für die Tipps !!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082692</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082692</guid><dc:creator><![CDATA[hschon]]></dc:creator><pubDate>Thu, 22 Jun 2006 07:54:59 GMT</pubDate></item><item><title><![CDATA[Reply to Verschiedene Dialogelemente per Preprozessor on Thu, 22 Jun 2006 08:19:52 GMT]]></title><description><![CDATA[<p>hschon schrieb:</p>
<blockquote>
<p>OK, es sieht ganz gut aus (allerdings konnte ich mit der Microsoft-Doku nicht viel anfangen! Die Aussage &quot;Sets the visibility state of the window&quot; führt doch völlig in die Irre -oder seit wann ist ein Button ein Window?!)<br />
Am besten sind immer noch Beispiele.</p>
<p>Damit's andere einfacher haben:</p>
<p>1. Button als Objekt in der Klasse CFormView anlegen:<br />
CButton m_measurement;</p>
<p>2. dann z.B in OnInitialUpdate den Button &quot;visible&quot; schalten:<br />
m_measurement.ShowWindow(TRUE);</p>
<p>Danke euch allen für die Tipps !!!</p>
</blockquote>
<p>Da hast Du wohl was nicht ganz verstanden. Rate mal warum Windows Windows heißt? Weil (fast) alles was Du siehst als Fenster angesehen wird, auch der Startknopf und die Taskleiste.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1082716</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1082716</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Thu, 22 Jun 2006 08:19:52 GMT</pubDate></item></channel></rss>