<?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[Startbild während des Programmstarts anzeigen]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich versuche, eine Startbild während des Programmstarts anzuzeigen. Die jetztige Main-Datei möchte ich weiter als Main-Datei behalten, aber das Form mit dem Startbild soll vor dem Main-Datei initialisiert werden.<br />
Hat jemand eine gute Lösung für mich? Danke</p>
<p>Fu, Bin</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/93853/startbild-während-des-programmstarts-anzeigen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 09 Jul 2026 16:04:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/93853.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 03 Dec 2004 12:00:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Fri, 03 Dec 2004 12:00:07 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich versuche, eine Startbild während des Programmstarts anzuzeigen. Die jetztige Main-Datei möchte ich weiter als Main-Datei behalten, aber das Form mit dem Startbild soll vor dem Main-Datei initialisiert werden.<br />
Hat jemand eine gute Lösung für mich? Danke</p>
<p>Fu, Bin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/665076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/665076</guid><dc:creator><![CDATA[fubin_22527]]></dc:creator><pubDate>Fri, 03 Dec 2004 12:00:07 GMT</pubDate></item><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Fri, 03 Dec 2004 12:10:46 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Mit der Suche habe ich z.Bsp. das hier <a href="http://www.c-plusplus.net/forum/viewtopic.php?t=12168&amp;highlight=splash" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic.php?t=12168&amp;highlight=splash</a> gefunden.<br />
oder das <a href="http://www.bytesandmore.de/rad/index.htm?http://www.bytesandmore.de/rad/cpp/snipp/sc06024.php" rel="nofollow">http://www.bytesandmore.de/rad/index.htm?http://www.bytesandmore.de/rad/cpp/snipp/sc06024.php</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/665083</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/665083</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Fri, 03 Dec 2004 12:10:46 GMT</pubDate></item><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Fri, 03 Dec 2004 13:58:06 GMT]]></title><description><![CDATA[<p>Danke!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/665186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/665186</guid><dc:creator><![CDATA[fubin_22527]]></dc:creator><pubDate>Fri, 03 Dec 2004 13:58:06 GMT</pubDate></item><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Fri, 03 Dec 2004 14:00:14 GMT]]></title><description><![CDATA[<p>Bitte.<br />
Das sollte aber auch ein dezenter Hinweis darauf sein, dass man vor dem Fragen die Suche benutzt. <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/665188</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/665188</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Fri, 03 Dec 2004 14:00:14 GMT</pubDate></item><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Fri, 03 Dec 2004 17:57:23 GMT]]></title><description><![CDATA[<p>ich habe eigentlich zuerst mit Suchefuntion versucht, aber habe leider falsches Schlüsselwort benutzt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Nach deiner Anweisung hat es geklappt, ein Startbild während der Initialisierung des MainForm anzuzeigen. Aber, für mich wäre es noch besser, wenn das Startbild während der Initialisierung des ganzen Programmes dargestellt werden könnte.</p>
<p>Ich habe mit folgend Code in Project.cpp (die C++ Datei für das Projekt) Versucht,</p>
<pre><code>Application-&gt;CreateForm(__classid(TF_Splash),&amp;F_Splash);
         F_Splash-&gt;Show();    //Formular für Startbild
         F_Splash-&gt;L_Status-&gt;Caption = &quot;initialising main form ...&quot;;
         F_Splash-&gt;Update();
         Application-&gt;CreateForm(__classid(TF_Main), &amp;F_Main);   //Main Formular
         Application-&gt;CreateForm(__classid(TF_Giata), &amp;F_Giata);
         Application-&gt;CreateForm(__classid(TF_DepartAirport), &amp;F_DepartAirport);
         Application-&gt;CreateForm(__classid(TF_Car), &amp;F_Car);
         Application-&gt;CreateForm(__classid(TF_SearchList), &amp;F_SearchList);
         Application-&gt;CreateForm(__classid(TAboutBox), &amp;AboutBox);
         Application-&gt;CreateForm(__classid(TF_ErrorMsg), &amp;F_ErrorMsg);
         Application-&gt;CreateForm(__classid(TF_Banking), &amp;F_Banking);
         Application-&gt;CreateForm(__classid(TF_InfoMsg), &amp;F_InfoMsg);
         Application-&gt;CreateForm(__classid(TF_Warning), &amp;F_Warning);
         Application-&gt;CreateForm(__classid(TF_Operator), &amp;F_Operator);
         Application-&gt;CreateForm(__classid(TF_ScreenShot), &amp;F_ScreenShot);
         Application-&gt;CreateForm(__classid(TF_AgentInfo), &amp;F_AgentInfo);
         Application-&gt;CreateForm(__classid(TF_Season), &amp;F_Season);
         Application-&gt;CreateForm(__classid(TF_StarterUpdate), &amp;F_StarterUpdate);
         Application-&gt;CreateForm(__classid(TF_Option), &amp;F_Option);
         Application-&gt;CreateForm(__classid(TF_FlyerPrinter), &amp;F_FlyerPrinter);
         Application-&gt;CreateForm(__classid(TF_FlyerPreview), &amp;F_FlyerPreview);
         Application-&gt;CreateForm(__classid(TF_Password), &amp;F_Password);
         Application-&gt;CreateForm(__classid(TF_OptionAccess), &amp;F_OptionAccess);
         Application-&gt;CreateForm(__classid(TF_Directory), &amp;F_Directory);
         delete F_Splash;     //release the memory after initialisation of the whole program is finished
         Application-&gt;Run();
</code></pre>
<p>Leider konnte das Programm nicht gestartet werden, wenn F_Splash am Ende der Initialisierung des Programms gelöscht wird. Es klappt nur, wenn F_Splash in Constructor vom Main-Form nach ihrer Initialisierung gelöscht wird.</p>
<p>Fogende ist ein Beispiel von BCB-Hilfe, komischweise läuft es so eigentlich nicht:</p>
<pre><code>#include &lt;vcl\vcl.h&gt;

#include &quot;Unit5.h&quot;
#pragma hdrstop
//---------------------------------------------------------------------------
USEFORM(&quot;Unit1.cpp&quot;, Form1);
USERES(&quot;Project1.res&quot;);
USEFORM(&quot;Unit2.cpp&quot;, Form2);
USEFORM(&quot;Unit3.cpp&quot;, Form3);
USEFORM(&quot;Unit4.cpp&quot;, Form4);
USEFORM(&quot;Unit5.cpp&quot;, Form5);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
  try
  {
    Application-&gt;Initialize();

    Application-&gt;CreateForm(__classid(TForm5), &amp;Form5);
    Form5-&gt;ProgressBar1-&gt;Max = 100;
    Form5-&gt;Show();   // show a splash screen contain ProgressBar control
    Form5-&gt;Update(); // force display of Form5
    Application-&gt;CreateForm(__classid(TForm1), &amp;Form1);
    Form5-&gt;ProgressBar1-&gt;StepBy(25);
    Application-&gt;CreateForm(__classid(TForm2), &amp;Form2);
    Form5-&gt;ProgressBar1-&gt;StepBy(25);
    Application-&gt;CreateForm(__classid(TForm3), &amp;Form3);

    Form5-&gt;ProgressBar1-&gt;StepBy(25);
    Application-&gt;CreateForm(__classid(TForm4), &amp;Form4);
    Form5-&gt;ProgressBar1-&gt;StepBy(25);
    delete Form5;
    Application-&gt;Run();
  }
  catch (Exception &amp;exception)
  {
    Application-&gt;ShowException(&amp;exception);
  }
  return 0;
</code></pre>
<p>hat jemand idee davon?<br />
Nochmal danke!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/665379</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/665379</guid><dc:creator><![CDATA[fubin_22527]]></dc:creator><pubDate>Fri, 03 Dec 2004 17:57:23 GMT</pubDate></item><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Fri, 03 Dec 2004 18:28:22 GMT]]></title><description><![CDATA[<p>Ich mach das in etwa so:</p>
<p>Programm kann mit Parameter z.B.: /Splash gerufen werden ( oder ohne)</p>
<p>Bei Start ohne den Parameter:</p>
<p>- App initialisieren<br />
- ShellExecute(Application-&gt;Exename ...);<br />
// Parameter &quot;/Splash&quot; mitgeben!!!<br />
- Alle Formulare initialisieren (Zuerst Hauptform!)<br />
Ein Mutex erzeugen mit eindeutigem Namen<br />
- App Run<br />
- Am Ende Mutex löschen!<br />
FERTIG!!!</p>
<p>Bei Start MIT dem Parameter:</p>
<p>- App init<br />
- Splashform erzeugen<br />
- App Run</p>
<p>FERTIG!!!</p>
<p>in Splashform hab' ich nen (langsamen) Timer<br />
damit wird wiederholt versucht denselben Mutex (gleicher Name!!!)<br />
zu ÖFFNEN.<br />
Falls ÖFNEN klappt (Hauptprogramm hat den Mutex erzeugt!) genuegt<br />
Form-&gt;Close()<br />
Vorher Mutex freigeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/665400</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/665400</guid><dc:creator><![CDATA[DerAltenburger]]></dc:creator><pubDate>Fri, 03 Dec 2004 18:28:22 GMT</pubDate></item><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Mon, 06 Dec 2004 13:11:32 GMT]]></title><description><![CDATA[<p>DerAltenburger schrieb:</p>
<blockquote>
<p>Bei Start MIT dem Parameter:</p>
<p>- App init<br />
- Splashform erzeugen<br />
- App Run</p>
<p>FERTIG!!!</p>
<p>in Splashform hab' ich nen (langsamen) Timer<br />
damit wird wiederholt versucht denselben Mutex (gleicher Name!!!)<br />
zu ÖFFNEN.<br />
Falls ÖFNEN klappt (Hauptprogramm hat den Mutex erzeugt!) genuegt<br />
Form-&gt;Close()<br />
Vorher Mutex freigeben.</p>
</blockquote>
<p>Mein Programm soll unter dem Platform XP-SP2 laufen können, deswegen ist ein Aufrufen von einem anderen Programm mit &quot;ShellExecute&quot; nicht erlaubt (weil es unter XP-SP2 nicht erlaubt ist).<br />
Ich weiß nicht, ob ein Mutex mit deinem Vorschlag &quot;Bei Start mit dem Parameter&quot; erzeugt werden soll. Wenn ja, wie und wo definiert ich ein wiederholte Method, denselben Mutex öffen zu versuchen? Ich habe schon etwas gelesen, was Mutext ist, aber habe mit deinem Vorschlag nicht ganz verstanden. Ich weiß nicht, ob du mir ein Beispielcode zeigen könntest. Danke im Voraus! <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/667094</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/667094</guid><dc:creator><![CDATA[fubin_22527]]></dc:creator><pubDate>Mon, 06 Dec 2004 13:11:32 GMT</pubDate></item><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Mon, 06 Dec 2004 13:42:18 GMT]]></title><description><![CDATA[<p>Ich erzeuge meine Splashscreens in dem Haupformular...</p>
<p>als erste Zeile in der OnCreate wird der Splashscreen erzeugt, in der letzten Zeile der OnShow wird der Splashscreen auf gelöscht. Hiermit ist allerdings keine ProgressBar (mit vertretbarem Aufwand) möglich.</p>
<p>Wenn der Splashscrenn in der Project.cpp erzeugt werden soll, sollte das erst durchgeführt werden, nachdem das komplette Programm fertig ist. Ansonsten wird beim Hinzufügen eines weiteren Forms diese Datei neu erzeugt und die selbst eingegenben Zeilen werden gelöscht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/667122</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/667122</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 06 Dec 2004 13:42:18 GMT</pubDate></item><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Mon, 06 Dec 2004 19:35:32 GMT]]></title><description><![CDATA[<p>Hauptprogramm:</p>
<pre><code class="language-cpp">WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
  HANDLE hMutex=NULL;
  AnsiString Param;
        try
        {        Param=ParamStr(1);
                 Param=Param.UpperCase();
                 Application-&gt;Initialize();
                 if (Param.AnsiPos(&quot;SPLASH&quot;)!=1)
                 {
                     ShellExecute(0,&quot;open&quot;,Application-&gt;ExeName.c_str(),
                                  Param.c_str(),&quot;&quot;,SW_SHOW);
                     //Hauptform
                     Application-&gt;CreateForm(__classid(TMMSearchForm), 
                                             &amp;MMSearchForm);
                     //weitere Formulare
                     Application-&gt;CreateForm(...);
                     Application-&gt;CreateForm(...);
                     Application-&gt;CreateForm(...);
                     Application-&gt;CreateForm(...);

                     hMutex=CreateMutex(0,0,&quot;MultimediaCentre_Mutex&quot;);
                     Application-&gt;Run();
                 }
                 else
                 {
                   Application-&gt;CreateForm(__classid(TSplashDlg), &amp;SplashDlg);
                   AboutDlg-&gt;Show();
                   Application-&gt;Run();
                 }
        }
        catch (Exception &amp;exception)
        {
                 Application-&gt;ShowException(&amp;exception);
        }
        if (hMutex)
          ReleaseMutex(hMutex);
        return 0;
}
</code></pre>
<p>SplashForm:</p>
<pre><code class="language-cpp">void __fastcall TSplashDlg::SplashTimerTimer(TObject *Sender)
{
  static HANDLE hMutex=NULL;  
  if (FollowMouse)
  {
    Left=Mouse-&gt;CursorPos.x - Width / 2;
    Top=Mouse-&gt;CursorPos.y - Height / 2;
  }
  if (hMutex)
  {
    ReleaseMutex(hMutex);
    hMutex=NULL;
    Close();
  }
  else
  {
    hMutex=OpenMutex(MUTEX_ALL_ACCESS,false,&quot;MultimediaCentre_Mutex&quot;);
  }
}
</code></pre>
<p>Timer steht auf 100..500 msec.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/667536</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/667536</guid><dc:creator><![CDATA[DerAltenburger]]></dc:creator><pubDate>Mon, 06 Dec 2004 19:35:32 GMT</pubDate></item><item><title><![CDATA[Reply to Startbild während des Programmstarts anzeigen on Tue, 07 Dec 2004 11:26:18 GMT]]></title><description><![CDATA[<p>danke Joe_M. und DerAltenburger für die Beide Lösungen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/667887</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/667887</guid><dc:creator><![CDATA[fubin_22527]]></dc:creator><pubDate>Tue, 07 Dec 2004 11:26:18 GMT</pubDate></item></channel></rss>