<?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[Nachkommastellen eines CEdit]]></title><description><![CDATA[<p>Ich einem Dialog habe ich mehrere Edit-Felder. Der Dialog wird aus einer Ressource geladen. In den Edit-Feldern sollen nun float-Werte manipuliert werden. Ich möchte nun, dass immer zwei Nachkommastellen angezeigt werden. Wenn die Eingabe bereits Nachkommastellen hat, so ist das ja kein Problem. Wenn die Zahl aber auf ,00 endet, so wird diese nur als ganze Zahl angezeigt. Da ein Editfeld ja immer als Text angesehen wird, so müsste man den Inhalt des Anzeigestrings manipulieren (z.B. in der DoDataExchange). Oder gibts da noch andere Möglichkeiten?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/191420/nachkommastellen-eines-cedit</link><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Apr 2026 07:38:06 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/191420.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 03 Sep 2007 07:22:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Nachkommastellen eines CEdit on Mon, 03 Sep 2007 07:22:02 GMT]]></title><description><![CDATA[<p>Ich einem Dialog habe ich mehrere Edit-Felder. Der Dialog wird aus einer Ressource geladen. In den Edit-Feldern sollen nun float-Werte manipuliert werden. Ich möchte nun, dass immer zwei Nachkommastellen angezeigt werden. Wenn die Eingabe bereits Nachkommastellen hat, so ist das ja kein Problem. Wenn die Zahl aber auf ,00 endet, so wird diese nur als ganze Zahl angezeigt. Da ein Editfeld ja immer als Text angesehen wird, so müsste man den Inhalt des Anzeigestrings manipulieren (z.B. in der DoDataExchange). Oder gibts da noch andere Möglichkeiten?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357599</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357599</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Mon, 03 Sep 2007 07:22:02 GMT</pubDate></item><item><title><![CDATA[Reply to Nachkommastellen eines CEdit on Mon, 03 Sep 2007 07:30:26 GMT]]></title><description><![CDATA[<p>CAMSCurrencyEdit<br />
CAMSMaskedEdit<br />
sind Teile einer Klassensammlung, die du auf <a href="http://www.codeproject.com" rel="nofollow">www.codeproject.com</a> findest. <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/1357602</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357602</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 03 Sep 2007 07:30:26 GMT</pubDate></item><item><title><![CDATA[Reply to Nachkommastellen eines CEdit on Mon, 03 Sep 2007 08:15:43 GMT]]></title><description><![CDATA[<p>Vielen Dank, diese Klasse hab ich auch gefunden. Allerdings ist mein Problem das der Dialog schon fertig ist. Um diese Klasse zu verwenden muss ich ja alles nochmal neu erstellen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357628</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357628</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Mon, 03 Sep 2007 08:15:43 GMT</pubDate></item><item><title><![CDATA[Reply to Nachkommastellen eines CEdit on Mon, 03 Sep 2007 08:29:50 GMT]]></title><description><![CDATA[<p>Nein, musst du nicht!</p>
<p>Binde für einfach die gewünschten Controls eine Controlvariable ein (CEdit) und integriere die AMS Klassen in dein Projekt.<br />
Dann geh in den Header, ersetze CEdit durch CAMSCurrencyEdit, denk an den include und guck was passiert. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>PS: Wenn du unsicher bist, mach vorher eine Kopie deines Projekts.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357633</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357633</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 03 Sep 2007 08:29:50 GMT</pubDate></item><item><title><![CDATA[Reply to Nachkommastellen eines CEdit on Mon, 03 Sep 2007 08:58:15 GMT]]></title><description><![CDATA[<p>Ok, wer lesen kann ist klar im Vorteil. Steht ja unter dem Abschnitt Usage. Jetzt wird das auch richtig angezeigt.<br />
Ich sichere die Inhalte in einer Ini-Datei. Jetzt werden aber durch diese neue Klasse die Nachkommastellen abgeschnitten. Gebe ich 50,23 ein, so wird nur 50 abgespeichert.<br />
Dann hab ich es nochmal mit der Klasse CAMSNumericEdit versucht. Die verhält sich wie ein normales Editfeld, obwohl ja per default 4 Nachkommastellen angezeigt werden müssten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357656</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357656</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Mon, 03 Sep 2007 08:58:15 GMT</pubDate></item><item><title><![CDATA[Reply to Nachkommastellen eines CEdit on Mon, 03 Sep 2007 09:01:45 GMT]]></title><description><![CDATA[<p>Hmm, komisch.<br />
Bei mir geht es. Wie sieht dein Code dafür aus?</p>
<p>Und denk dran: Hier ist es 5,34 - beim Programmieren zu 99% 5.34!<br />
Ich arbeite oft mit CString Variablen auch wenns um Zahlen geht, damit ich noch schnell ein Replace drüberjagen kann. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357660</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357660</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 03 Sep 2007 09:01:45 GMT</pubDate></item><item><title><![CDATA[Reply to Nachkommastellen eines CEdit on Mon, 03 Sep 2007 09:07:09 GMT]]></title><description><![CDATA[<p>estartu schrieb:</p>
<blockquote>
<p>Hmm, komisch.<br />
Bei mir geht es. Wie sieht dein Code dafür aus?</p>
<p>Und denk dran: Hier ist es 5,34 - beim Programmieren zu 99% 5.34!<br />
Ich arbeite oft mit CString Variablen auch wenns um Zahlen geht, damit ich noch schnell ein Replace drüberjagen kann. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
<p>Das mit dem Komma ist mir klar. Ich hab noch eine Membervariable vom Typ Double, die mit dem Editfeld verknüft ist.</p>
<pre><code class="language-cpp">void CKalibrierungWMA::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_RADIUS_KLEIN, m_CtrlZylklein);
	DDX_Text(pDX, IDC_RADIUS_KLEIN, m_dRadZyl1);
	DDX_Control(pDX, IDC_RADIUS_GROSS, m_CtrlZylgross);
	DDX_Text(pDX, IDC_RADIUS_GROSS, m_dRadZyl2);
}
</code></pre>
<p>Da passiert der Datenaustausch. Könnte es sein, dass man das so nicht mehr machen kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357663</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357663</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Mon, 03 Sep 2007 09:07:09 GMT</pubDate></item><item><title><![CDATA[Reply to Nachkommastellen eines CEdit on Mon, 03 Sep 2007 09:14:18 GMT]]></title><description><![CDATA[<p>AndyDD schrieb:</p>
<blockquote>
<p>Da passiert der Datenaustausch. Könnte es sein, dass man das so nicht mehr machen kann?</p>
</blockquote>
<p>Ich fürchte ja, denn die Umwandlung hält das Komma für ein ungültiges Zeichen und hört da auf umzuwandeln.</p>
<p>Schau mal mit dem Debugger rein, ich vermute es geht dort schon verloren.<br />
Mach mal probehalber eine CString-Variable und wandle dann mit Replace und atof um.<br />
So sieht das bei mir aus:</p>
<pre><code class="language-cpp">CString strPreis = m_lscLeistungen.GetItemText(i, 2); // Das kann bei dir per CString Member und UpdateData passieren.
		strPreis.Replace(&quot;,&quot;, &quot;.&quot;);
		flPreis += atof(strPreis);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1357669</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357669</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 03 Sep 2007 09:14:18 GMT</pubDate></item><item><title><![CDATA[Reply to Nachkommastellen eines CEdit on Mon, 03 Sep 2007 10:47:07 GMT]]></title><description><![CDATA[<p>So wirds sein. Aber da kann ich auch gänzlich auf diese Klasse verzichten. Hab das jetzt so gelöst:</p>
<pre><code class="language-cpp">void CKalibrierungWMA::DoDataExchange(CDataExchange* pDX)
{
	CString	Rad1String, Rad2String;

	CDialog::DoDataExchange(pDX);

	DDX_Control(pDX, IDC_RADIUS_KLEIN, m_CtrlZylklein);
	DDX_Text(pDX, IDC_RADIUS_KLEIN, m_dRadZyl1);
	m_CtrlZylklein.GetWindowText(Rad1String);
	Rad1String.Format(&quot;%.2f&quot;,(double)atof(Rad1String));
	m_CtrlZylklein.SetWindowText(Rad1String);

	DDX_Control(pDX, IDC_RADIUS_GROSS, m_CtrlZylgross);
	DDX_Text(pDX, IDC_RADIUS_GROSS, m_dRadZyl2);
	m_CtrlZylklein.GetWindowText(Rad2String);
	Rad2String.Format(&quot;%.2f&quot;,(double)atof(Rad2String));
	m_CtrlZylklein.SetWindowText(Rad2String);
}
</code></pre>
<p>Funktioniert auch...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1357750</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1357750</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Mon, 03 Sep 2007 10:47:07 GMT</pubDate></item></channel></rss>