<?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[Ausgabe spinnt]]></title><description><![CDATA[<p>Ich habe eine Listcontrol die mit Zahlen aus einer Datenbank gefüllt wird,und aus irgendeine Grund wird ein Wert erhöht wenn ein anderer Wert grösser als 65.000 ist.Der Wert ändert sich nur in der Anzeige nicht in der Datenbank.<br />
Der Code mit dem die Liste gefüllt wird.<br />
Der Wert ist der sich erhöht ist der Wert an der 4.Stelle(i=3) im Recordsets und der Wert der das auslöst ist der Wert and der 3.Stelle(i=2).</p>
<pre><code class="language-cpp">while(!r-&gt;IsEOF())
{
 COLORREF bc,fc;
 bc = RGB(255,255,255);
 r-&gt;GetFieldValue(6,val);
 //Im folgenden Abschnitt wird die Farbe des Listeneintrags bestimmt
 if(!val.boolVal)
 {
  fc = RGB(255,0,0);
 }
 else
 {
  r-&gt;GetFieldValue(5,val);
  if(val.intVal==0)
  {
   fc = RGB(255,0,0);
  }
  else
 {
  if(val.intVal  &lt;=100)
  {
   fc = RGB(51,153,51);
  }
  else
  {
   fc = RGB(255,192,0);
  }
 }
 }
 CString a =&quot;&quot;;
 r-&gt;GetFieldValue(0,val);
 CString in =val.pbVal;
 a = in;
 int q = m_SP.InsertItem(r-&gt;GetAbsolutePosition(),in,fc,bc);
 if(m_SP.GetStringWidth(in)&gt;m_SP.GetColumnWidth(0))
 {
  m_SP.SetColumnWidth(0,parent-&gt;m_SP.GetStringWidth(in)+10);
 }
 for(int i=1;i &lt;= 5;i++)
 {
   r-&gt;GetFieldValue(i,val);
   in = &quot;&quot;;
   in.Format(&quot;%d&quot;,val.intVal);
   if((val.intVal==0&amp;&amp;(i==1||i==2))||(val.intVal==9000&amp;&amp;i==3))
   {
    in =&quot;---&quot;;
   }
   if(i&lt; 3)
   {
    in = Format_Preis(in);
   }
   if(i==4)
   {
    idtemp =val.intVal;
   }
   m_SP.SetItemText(q,i,in,fc,bc);
   if(m_SP.GetStringWidth(in)&gt;m_SP.GetColumnWidth(i)&amp;&amp; i!=4)
   {
    m_SP.SetColumnWidth(i,parent-&gt;m_SP.GetStringWidth(in)+10);
   }
  }
  r-&gt;GetFieldValue(6,val);
  if(val.boolVal)
  {
    m_SP.SetCheckbox(q,7,true);
  }
  else
  {
   m_SP.SetCheckbox(q,7,false);
  }
  sk_pos.InsertAt(m_SPAuswahl.AddString(a),idtemp);//Hier wird noch eine Combobox zusätzlich gefüllt
  pos++;
  r-&gt;MoveNext();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/53446/ausgabe-spinnt</link><generator>RSS for Node</generator><lastBuildDate>Mon, 01 Jun 2026 09:35:54 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/53446.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 29 Oct 2003 10:37:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ausgabe spinnt on Wed, 29 Oct 2003 10:42:12 GMT]]></title><description><![CDATA[<p>Ich habe eine Listcontrol die mit Zahlen aus einer Datenbank gefüllt wird,und aus irgendeine Grund wird ein Wert erhöht wenn ein anderer Wert grösser als 65.000 ist.Der Wert ändert sich nur in der Anzeige nicht in der Datenbank.<br />
Der Code mit dem die Liste gefüllt wird.<br />
Der Wert ist der sich erhöht ist der Wert an der 4.Stelle(i=3) im Recordsets und der Wert der das auslöst ist der Wert and der 3.Stelle(i=2).</p>
<pre><code class="language-cpp">while(!r-&gt;IsEOF())
{
 COLORREF bc,fc;
 bc = RGB(255,255,255);
 r-&gt;GetFieldValue(6,val);
 //Im folgenden Abschnitt wird die Farbe des Listeneintrags bestimmt
 if(!val.boolVal)
 {
  fc = RGB(255,0,0);
 }
 else
 {
  r-&gt;GetFieldValue(5,val);
  if(val.intVal==0)
  {
   fc = RGB(255,0,0);
  }
  else
 {
  if(val.intVal  &lt;=100)
  {
   fc = RGB(51,153,51);
  }
  else
  {
   fc = RGB(255,192,0);
  }
 }
 }
 CString a =&quot;&quot;;
 r-&gt;GetFieldValue(0,val);
 CString in =val.pbVal;
 a = in;
 int q = m_SP.InsertItem(r-&gt;GetAbsolutePosition(),in,fc,bc);
 if(m_SP.GetStringWidth(in)&gt;m_SP.GetColumnWidth(0))
 {
  m_SP.SetColumnWidth(0,parent-&gt;m_SP.GetStringWidth(in)+10);
 }
 for(int i=1;i &lt;= 5;i++)
 {
   r-&gt;GetFieldValue(i,val);
   in = &quot;&quot;;
   in.Format(&quot;%d&quot;,val.intVal);
   if((val.intVal==0&amp;&amp;(i==1||i==2))||(val.intVal==9000&amp;&amp;i==3))
   {
    in =&quot;---&quot;;
   }
   if(i&lt; 3)
   {
    in = Format_Preis(in);
   }
   if(i==4)
   {
    idtemp =val.intVal;
   }
   m_SP.SetItemText(q,i,in,fc,bc);
   if(m_SP.GetStringWidth(in)&gt;m_SP.GetColumnWidth(i)&amp;&amp; i!=4)
   {
    m_SP.SetColumnWidth(i,parent-&gt;m_SP.GetStringWidth(in)+10);
   }
  }
  r-&gt;GetFieldValue(6,val);
  if(val.boolVal)
  {
    m_SP.SetCheckbox(q,7,true);
  }
  else
  {
   m_SP.SetCheckbox(q,7,false);
  }
  sk_pos.InsertAt(m_SPAuswahl.AddString(a),idtemp);//Hier wird noch eine Combobox zusätzlich gefüllt
  pos++;
  r-&gt;MoveNext();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/381790</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/381790</guid><dc:creator><![CDATA[Andorxor]]></dc:creator><pubDate>Wed, 29 Oct 2003 10:42:12 GMT</pubDate></item></channel></rss>