<?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[Habe ein Problem mit meinem Menü]]></title><description><![CDATA[<p>Ertsmal Danke das du/sie dich/sich für mein Problem interessierst!</p>
<p>Ich habe mir ein Menü gebaut welches ich in D3D Spielen starten kann und auch soweit einwandfrei benutzen kann bzw. Es funktioniert!</p>
<p>ich habe die ganzen menüitems als static in ner .h deklariert und eingebunden die haben so nen basis struct</p>
<pre><code>struct CMItem
{
public:
	char* szCaption;
	MITYPE miType;
	RECT rDisplay;
	BOOL bEnabled;
	char* szToolTip;
};
</code></pre>
<p>und sind z.B. so deklariert</p>
<pre><code>static CMItem miReturn = {MENUBACKCHAR,MIRETURN,{0,0,0,0},TRUE,&quot;&quot;};
</code></pre>
<p>Jetzt zu meinem Problem!</p>
<p>Solange ich die Werte vom struct in der Menu.cpp wo sie eingebunden sind abfrage/verändere bekomme ich die richtigen werte! Das sehe ich dann an meinem Menü!<br />
Sobald ich aus ner anderen .cpp wo die menu.h ebenfalls eingebunden ist versuche die werte abzufragen bekomme ich immer nur default also die definition von mir zurückgegeben!</p>
<p>Ich kann mir absolut nicht weiterhelfen!<br />
Hab jetzt schon gelesen das static die probleme macht.<br />
aber was kann ich als ersatz nehmen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/221124/habe-ein-problem-mit-meinem-menü</link><generator>RSS for Node</generator><lastBuildDate>Tue, 06 Oct 2026 08:12:05 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/221124.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 25 Aug 2008 20:08:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Habe ein Problem mit meinem Menü on Mon, 25 Aug 2008 20:08:28 GMT]]></title><description><![CDATA[<p>Ertsmal Danke das du/sie dich/sich für mein Problem interessierst!</p>
<p>Ich habe mir ein Menü gebaut welches ich in D3D Spielen starten kann und auch soweit einwandfrei benutzen kann bzw. Es funktioniert!</p>
<p>ich habe die ganzen menüitems als static in ner .h deklariert und eingebunden die haben so nen basis struct</p>
<pre><code>struct CMItem
{
public:
	char* szCaption;
	MITYPE miType;
	RECT rDisplay;
	BOOL bEnabled;
	char* szToolTip;
};
</code></pre>
<p>und sind z.B. so deklariert</p>
<pre><code>static CMItem miReturn = {MENUBACKCHAR,MIRETURN,{0,0,0,0},TRUE,&quot;&quot;};
</code></pre>
<p>Jetzt zu meinem Problem!</p>
<p>Solange ich die Werte vom struct in der Menu.cpp wo sie eingebunden sind abfrage/verändere bekomme ich die richtigen werte! Das sehe ich dann an meinem Menü!<br />
Sobald ich aus ner anderen .cpp wo die menu.h ebenfalls eingebunden ist versuche die werte abzufragen bekomme ich immer nur default also die definition von mir zurückgegeben!</p>
<p>Ich kann mir absolut nicht weiterhelfen!<br />
Hab jetzt schon gelesen das static die probleme macht.<br />
aber was kann ich als ersatz nehmen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1571335</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1571335</guid><dc:creator><![CDATA[Big_Problem]]></dc:creator><pubDate>Mon, 25 Aug 2008 20:08:28 GMT</pubDate></item><item><title><![CDATA[Reply to Habe ein Problem mit meinem Menü on Mon, 25 Aug 2008 21:12:53 GMT]]></title><description><![CDATA[<p>Habe jetzt zumindest ein Lösung gefunden ohne einen enum mit den ganzen items zu machen</p>
<p>So wie es aussieht bekommt die andere cpp auch die ganzen Items aber frische und ie ist nicht an die veränderungen aus der menü.cpp gekoppelt!<br />
Also frag ich die captions ab! sieht zwar altbacken aus aber es funzt!</p>
<pre><code>FLOAT CIngameMenu::GetValue(PVOID pItem)
{
	for (INT i=0;i&lt;iValueCount;i++)
		if (Values[i] &amp;&amp; !strcmpi(((CMItem*)pItem)-&gt;szCaption,Values[i]-&gt;szCaption)) 
		{
			switch (Values[i]-&gt;miType){
				case MIVALUE: return Values[i]-&gt;fValue;
				case MISWITCH: return (FLOAT)*((BOOL*)&amp;Values[i]-&gt;fValue);
				case MICOLOR:
				case MIKEY: return (FLOAT)*((BYTE*)&amp;Values[i]-&gt;fValue);
			}
		}
	return 0.0;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1571372</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1571372</guid><dc:creator><![CDATA[Big_Problem]]></dc:creator><pubDate>Mon, 25 Aug 2008 21:12:53 GMT</pubDate></item><item><title><![CDATA[Reply to Habe ein Problem mit meinem Menü on Tue, 26 Aug 2008 11:30:30 GMT]]></title><description><![CDATA[<p>Bitte beende nicht jeden zweiten Satz mit einem Ausrufezeichen.</p>
<p>Du bist dir schon folgender Dinge bewusst?</p>
<ul>
<li><code>static</code> führt dazu, dass in jeder Übersetzungseinheit eine eigene Definition und ein eigener Bezeichner entsteht.</li>
<li>Nach <code>case</code> -Marken in <code>switch</code> sollte generell ein <code>break;</code> stehen, es sei denn, die folgenden Fälle sollen auch miteinbezogen werden.</li>
<li>Ein <code>struct</code> braucht keinen <code>public</code> -Spezifizierer.</li>
<li>Wenn du mit Standard-C++ arbeitest, kannst du die kleingeschriebenen Varianten der Datentypen ( <code>int</code> , <code>float</code> , <code>void*</code> ) benutzen.</li>
<li>Zudem gibt es da die Klasse <code>std::string</code> , die dich von der mühsamen Arbeit mit <code>char*</code> befreit.</li>
<li>Meistens gibts eine bessere Methode als die Übergabe eines Void-Zeigers.</li>
<li>In C++ benutzt man <code>static_cast</code> statt der C-Style-Casts mit Klammern.</li>
<li>Die Vorteile der ungarischen Notation seien mal dahingestellt...</li>
</ul>
]]></description><link>https://www.c-plusplus.net/forum/post/1571636</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1571636</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 26 Aug 2008 11:30:30 GMT</pubDate></item><item><title><![CDATA[Reply to Habe ein Problem mit meinem Menü on Tue, 26 Aug 2008 20:33:22 GMT]]></title><description><![CDATA[<p>Das doch egal wie ich einen satz beende oder?</p>
<p>1. ist jetz bekannt ja<br />
2. das in meinem fall irrelevant da die func dadurch beendet wird<br />
3. das sie keinen brauch ist klar ist ein überbleibsel weil normalerweise ne klasse sein sollte aber damit hatte ich noch mehr schwierigkeiten<br />
4. das jedem sein stil<br />
5. das auch<br />
6. pvoid ist universell ich kanns ja interpretieren wie ich will (auch so ne stil sache)<br />
7. kenn ich net ich versteh mit meinem alles (auch wieder stil)<br />
8. keine lust gehabt danach zu googlen da unbekannt</p>
<p>So wie ich das jetzt mache hat das ganze jetzt ein riesen nachteil<br />
es ist total lahm durch die for schleife wenn ich viele werte abfragen muss bzw das menü viele items hat!</p>
<p>Welche Möglichkeiten gibt es noch das ich direkt auf die items zugreifen kann?<br />
Mir fällt das hier noch ein aber da ich mich an die struktur dann halten muss scheidet diese variante für mich aus!<br />
ich könnte ein enum machen damit ich den index von Values habe</p>
<p>Evtl ist es ja auch möglich die Items aus anderen cpp's irgendwie an die aus der menu.cpp zu koppeln aber da hab ich keinen ansatz!<br />
Gibt bestimmt wieder irgendso eine Lösung bei der, wenn man sie sieht sofort denkt &quot;stimmt ja...hätte ich ja drauf kommen können&quot;<br />
Evtl weis es einer von euch und kann mir weiterhelfen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1571929</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1571929</guid><dc:creator><![CDATA[Big_Problem]]></dc:creator><pubDate>Tue, 26 Aug 2008 20:33:22 GMT</pubDate></item></channel></rss>