<?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[Progress Bar beim Einlesen aktualisieren...]]></title><description><![CDATA[<p>Hi!</p>
<p>Wie kann ich es schaffen, dass die Progress Bar mitläuft beim Einlesen einer Datei? Quasi wie beim Downloadmanager.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/183520/progress-bar-beim-einlesen-aktualisieren</link><generator>RSS for Node</generator><lastBuildDate>Sun, 16 Aug 2026 05:01:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/183520.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 05 Jun 2007 18:36:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Progress Bar beim Einlesen aktualisieren... on Tue, 05 Jun 2007 18:36:20 GMT]]></title><description><![CDATA[<p>Hi!</p>
<p>Wie kann ich es schaffen, dass die Progress Bar mitläuft beim Einlesen einer Datei? Quasi wie beim Downloadmanager.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1299528</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1299528</guid><dc:creator><![CDATA[Dragonfire]]></dc:creator><pubDate>Tue, 05 Jun 2007 18:36:20 GMT</pubDate></item><item><title><![CDATA[Reply to Progress Bar beim Einlesen aktualisieren... on Tue, 05 Jun 2007 18:44:13 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Siehe die Eigenschaften TProgressBar::Min, Max und Pos.<br />
Um die Änderungen just-in-Time zu verarbeiten ist eventuell nach jedem Setzen von Pos ein</p>
<pre><code class="language-cpp">Application-&gt;ProcessMessages();
</code></pre>
<p>nötig.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1299533</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1299533</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 05 Jun 2007 18:44:13 GMT</pubDate></item><item><title><![CDATA[Reply to Progress Bar beim Einlesen aktualisieren... on Wed, 06 Jun 2007 10:04:00 GMT]]></title><description><![CDATA[<p>Nur wie bekomm ich die Zeigerposition beim Einlesen bei jeder Zeigeränderung mit?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1299881</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1299881</guid><dc:creator><![CDATA[Dragonfire]]></dc:creator><pubDate>Wed, 06 Jun 2007 10:04:00 GMT</pubDate></item><item><title><![CDATA[Reply to Progress Bar beim Einlesen aktualisieren... on Fri, 08 Jun 2007 15:29:06 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich setze vor der Schleife Min auf =0, Max = maximale Anzahl von Datensätzen (RecCount) und Pos = Zählervariable. Nach jeder Pos ein Refresh() und die ProgressBar läuft. (zumindest bei mir)</p>
<p>mfg<br />
Traugott</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1301417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1301417</guid><dc:creator><![CDATA[zufaulzumeinloggen]]></dc:creator><pubDate>Fri, 08 Jun 2007 15:29:06 GMT</pubDate></item><item><title><![CDATA[Reply to Progress Bar beim Einlesen aktualisieren... on Mon, 11 Jun 2007 14:35:31 GMT]]></title><description><![CDATA[<p>Das Just in Time ist nicht das Problem.</p>
<p>Jedoch läuft das Einlesen komplett in einer Methode einer anderen Klasse statt. Und ich müsste irgendwie an die Zeigerposition beim Ein-/Auslesen kommen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1303216</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1303216</guid><dc:creator><![CDATA[Dragonfire]]></dc:creator><pubDate>Mon, 11 Jun 2007 14:35:31 GMT</pubDate></item><item><title><![CDATA[Reply to Progress Bar beim Einlesen aktualisieren... on Mon, 11 Jun 2007 14:52:50 GMT]]></title><description><![CDATA[<p>Wenn Du Hilfe möchtest, mußt Du schon mit mehr Informationen herausrücken. So kann Dir keiner helfen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1303242</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1303242</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 11 Jun 2007 14:52:50 GMT</pubDate></item><item><title><![CDATA[Reply to Progress Bar beim Einlesen aktualisieren... on Mon, 11 Jun 2007 15:02:07 GMT]]></title><description><![CDATA[<p>Engine.cpp</p>
<pre><code class="language-cpp">...
//Gibt 0 zurück wenn ein Fehler auftrat, 1 wenn nicht
int Engine::einlesen(AnsiString datei)
{
//----Stream-initialisieren----
  ifstream ifl(datei.c_str(), ios::in|ios::binary);
//----Fehler?----
  if(!ifl)
  {
    return 0;
  }
//----Länge-bestimmen----
  unsigned int ende;
  ifl.seekg(0, ios::end);
  ende = ifl.tellg();
  ifl.seekg(0, ios::beg);
//----Array-initialisieren----
  delete array;
  array = new char[ende];
//----Daten-einlesen----
  ifl.read((char*)array, ende);
//----Stream-schließen----
  ifl.close();
//----Info-vorbereiten----
if(m_ArrayLength &gt; 0)
{
  extendArray();
}
//----Info-setzen----
  info[m_ArrayLength].groesse = ende;
//----Alles-OK----
  return 1;
}
</code></pre>
<p>Main (GUI)</p>
<pre><code class="language-cpp">...
void __fastcall TForm1::DateiHinzufuegenClick(TObject *Sender)
{
  StatusBar-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;Warte auf Benutzer...&quot;;
//----Form-anzeigen----
  Form2-&gt;setMode(0);
  Form2-&gt;ShowModal();
//----Abbruch?----
  if(Form2-&gt;getAbbruch())
  {
    StatusBar-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;Bereit...&quot;;
    return;
  }
  Application-&gt;ProcessMessages();

  Form3-&gt;setMode(0);
  Form3-&gt;Show();
  Form3-&gt;setForm(this);
  this-&gt;Enabled = false;
  Application-&gt;ProcessMessages();
  Form3-&gt;CheckBox5-&gt;Checked = TRUE;
  Application-&gt;ProcessMessages();
  Form3-&gt;setPfeil(1);
  Application-&gt;ProcessMessages();
//----Ein-Item-mehr----
  items ++;
//----updaten----
  int err1 = cg.einlesen(Form2-&gt;Pfad-&gt;Text);
  if(err1 == 0)
  {
    Form3-&gt;Image1-&gt;Visible = false;
    Form3-&gt;Image3-&gt;Visible = true;
    Form3-&gt;Button1-&gt;Enabled = true;
    return;
  }
  Form3-&gt;CheckBox2-&gt;Checked = TRUE;
  Application-&gt;ProcessMessages();
  Form3-&gt;ProgressBar1-&gt;Position = 100;

  Form3-&gt;setPfeil(2);
  Application-&gt;ProcessMessages();
  Form3-&gt;CheckBox3-&gt;Checked = TRUE;
  Application-&gt;ProcessMessages();
  Form3-&gt;setPfeil(3);
  Application-&gt;ProcessMessages();

  AnsiString a2 = Form2-&gt;Version-&gt;Text;
  AnsiString a3 = Form2-&gt;Typ-&gt;Text;
  AnsiString a4 = Form2-&gt;Autor-&gt;Text;
  AnsiString a5 = Form2-&gt;Beschreibung-&gt;Text;
  if(a2.Length() == 0) {a2 = &quot;-&quot;;}
  if(a3.Length() == 0) {a3 = &quot;-&quot;;}
  if(a4.Length() == 0) {a4 = &quot;-&quot;;}
  if(a5.Length() == 0) {a5 = &quot;-&quot;;}
  cg.verifizieren(a2, a3, a4, a5);

  int err2 = cg.speichern(savePfad);
  if(err2 == 0)
  {
    Form3-&gt;Image1-&gt;Visible = false;
    Form3-&gt;Image3-&gt;Visible = true;
    Form3-&gt;Button1-&gt;Enabled = true;
    return;
  }

  Form3-&gt;CheckBox4-&gt;Checked = TRUE;
  Application-&gt;ProcessMessages();
  Form3-&gt;ProgressBar2-&gt;Position = 100;
  Application-&gt;ProcessMessages();
  Form3-&gt;Image1-&gt;Visible = FALSE;
  Application-&gt;ProcessMessages();
  Form3-&gt;Image2-&gt;Visible = TRUE;
  Application-&gt;ProcessMessages();
  Form3-&gt;Button1-&gt;Enabled = TRUE;
  Application-&gt;ProcessMessages();
  Form3-&gt;setPfeil(4);

  StatusBar-&gt;Panels-&gt;Items[0]-&gt;Text = &quot;Bereit...&quot;;
  geaendert = true;
  updatePanel2();

//----Hinzufügen----
  updateListe();

  Form2-&gt;Pfad-&gt;Clear();
  Form2-&gt;Spiel-&gt;Clear();
  Form2-&gt;Version-&gt;Clear();
  Form2-&gt;Typ-&gt;Clear();
  Form2-&gt;Autor-&gt;Clear();
  Form2-&gt;Beschreibung-&gt;Clear();
}
</code></pre>
<p>-cg ist Engine.cpp instanziert<br />
-Form2 ist ein Dialog um Daten vom Benutzer abzufragen<br />
-Form3 ist ein Dialog um den Fortschritt anzuzeigen, hier befindet sich auch die zu aktualisierende ProgressBar</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1303255</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1303255</guid><dc:creator><![CDATA[Dragonfire]]></dc:creator><pubDate>Mon, 11 Jun 2007 15:02:07 GMT</pubDate></item><item><title><![CDATA[Reply to Progress Bar beim Einlesen aktualisieren... on Tue, 12 Jun 2007 07:29:21 GMT]]></title><description><![CDATA[<p>Bei diesem Aufbau ist eine Fortschrittsanzeige nicht möglich. Um das zu erreichen, musst Du die Daten blockweise einlesen, also zB in 1 MB Blöcken, anstatt komplett in einem Rutsch. Dann hast Du auch eine Stelle, an der sich die Progressbar aktualisieren läßt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1303716</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1303716</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 12 Jun 2007 07:29:21 GMT</pubDate></item><item><title><![CDATA[Reply to Progress Bar beim Einlesen aktualisieren... on Tue, 12 Jun 2007 12:34:46 GMT]]></title><description><![CDATA[<p>Hab ich mir schon fast gedacht, trotzdem thx <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/1303944</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1303944</guid><dc:creator><![CDATA[Dragonfire]]></dc:creator><pubDate>Tue, 12 Jun 2007 12:34:46 GMT</pubDate></item></channel></rss>