Announcement

Collapse
No announcement yet.

Hauptform beim Start verbergen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hauptform beim Start verbergen

    <pre>
    In meinem Programm möchte ich das Hauptformular beim Start verbergen.
    Dazu benutze ich folgenden Code:
    ShowWindow(GetWindow(Handle,GW_Owner),sw_Hide);
    Self.Hide;
    Leider funktioniert das in den Create/Onshow/Onactivate-Events nicht.
    Wer weiß Rat?
    </pre>

  • #2
    Und wenn Du von vorherein in den Projekteinstellungen ein anderes Fenster zum Hauptfenster machst? Auf die o.g. Art setzt Du ja quasi die Application auf Hide. Und das dürfte so m.E. nicht funktionieren

    Comment


    • #3
      <pre>
      Ich habe ja nur ein Fenster, und zwar das Hauptfenster.
      Also ich will die Applikation nur in der Notification-Area haben und
      bei Bedarf wieder hervorholen.
      </pre&gt

      Comment


      • #4
        Was ist denn mit Application.ShowMainForm:=False;

        Comment


        • #5
          <pre>
          Hmmmm,
          das muß ich noch testen. :-)
          </pre&gt

          Comment


          • #6
            In dem Fall schlage ich vor, du machst das Fenster unsichtbar:

            <PRE>
            procedure TForm1.OnShow(Sender: TObject);
            begin
            ShowWindow(self.Handle,SW_HIDE);
            ShowWindow(Application.Handle,SW_HIDE);
            end;
            </PRE>

            und holst es mit "SW_SHOW" bei Bedarf wieder in den Vordergrund. Aber, wie gesagt, nimm das "OnShow"- oder "OnActivate"-Ereignis, denn in "OnCreate" wird das Fenster ja erst erzeugt.

            Mathias

            Comment


            • #7
              <pre>
              Danke für die Tipps.
              Die funktionieren leider nicht.
              </pre&gt

              Comment


              • #8
                Moin Falcon37,<br>
                <br>
                das mit Application.ShowMainForm := false funktioniert nicht?<br>
                Wo hast Du das denn eingebaut?<br>
                Nur mal ein Beispiel:<br>
                <pre>
                program Project1;

                uses
                Forms,
                Unit1 in 'Unit1.pas' {Form1};

                {$R *.RES}

                begin
                Application.Initialize;
                Application.CreateForm(TForm1, Form1);
                Application.ShowMainForm := false;
                Application.Run;
                end.
                </pre>
                <br>
                Das ist die Projektdatei (Erreichbar z.B. über Projekt/Quelltext anzeigen)<br>
                <br>
                Ciao<br>
                Chri

                Comment

                Working...
                X