Announcement

Collapse
No announcement yet.

Hauptformular setzen Icon und Taskbar Problem

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

  • Hauptformular setzen Icon und Taskbar Problem

    Hallo Zusammen,

    ich habe eine Login-Maske und eine Hauptformular. Das Login Fenster sollte natürlich zuerst erscheinen und anschließend bei erfolgreichem Login das Hauptformular.
    Aber laut C++Builder Option-Projekt ist das Hauptformular die Login Maske.

    Probleme habe ich auch mit der Darstellung in der Taskbar bzw. Alt+Tab, da kein Icon angezeigt wird.


    Hat irgendeine einen Bsp.Code bei dem erst eine Maske dargestellt wird und anschließend das Hauptformlar und wo das Icon (Alt+Tab) und die Taskbar korrekt dargestellt wird?

    Besten Dank
    Thomas

  • #2
    Die loginform in WinMain selbst instancieren.

    Code:
    WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
    {
    
      try
      {
         Application->Initialize();
    
         TLoginForm *LoginForm = new TLoginForm ( Application );
    
         LoginForm->ShowModal();
      
          // auswärtungscode
    
         delete LoginForm;
    
     
        Application->CreateForm(__classid(TForm1), &Form1);
     
         Application->Run();
      }
      catch (Exception &exception)
      {
         Application->ShowException(&exception);
      }
    
      return 0;
    }

    Comment


    • #3
      Danke, aber in der Taskbar wird das Icon von der App nicht gezeigt, wenn das Login-Fenster dargestellt wird.

      Hier mein Code
      Code:
      		Application->Initialize();
      		SetApplicationMainFormOnTaskBar(Application, true);
      
      		TFrmLogin *FrmLogin = new TFrmLogin(Application);
      		int retVal = FrmLogin->ShowModal();
      		if (retVal== mrOk) {
      			Application->CreateForm(__classid(TFrmMain), &FrmMain);
      		}
      
      		Application->Run();
      		if (retVal != mrOk) {
      			Application->Terminate();
      		}

      Comment


      • #4
        Originally posted by Thomas Juentgen View Post
        Danke, aber in der Taskbar wird das Icon von der App nicht gezeigt, wenn das Login-Fenster dargestellt wird.
        Doch.

        Es komt gleich eine Schaltflache mit ProgramName und ProgramIcon in taskbar.


        >>> SetApplicationMainFormOnTaskBar(Application, true);

        Was ist dass fuer eine function?

        Comment


        • #5
          Diese Funktion wird automatisch von C++Builder hinzugefügt. Diese Funktion wurde mit Update Dezember 2007 eingespielt.
          Wenn ich diese Funktion entferne klappt es, aber wenn ich das in meinem eingentlichem Projekt nutze bringt das nichts.

          Comment


          • #6
            Aber wass soll diese Function tun? Bitte erklaere.

            Wass nicht past is das die function anscheinend etwas mit die mainform machen soll.
            Aber die mainform existiert auf diesen mopment noch nicht.

            Fuegt c++builder 2007 die function genau auf diese stelle ein?


            Und wass bringt es dann nicht?

            Wilst du sagen dass dann keine schaltflache mit ProgramName und ProgramIcon
            in die taskbar komt?

            Comment


            • #7
              Also 1. es funktioniert nun.
              Da das Icon nicht dargestellt wurde lag an meinem Icon an sich.
              Ich haben nun alle Ausprägungen erstellt (16x16 - 48x48 und dann in 256Farben und mehr)

              Also ich vermute mal, dass diese Funktion unter Vista irgendwas zu sagen hat.
              Bzw. wenn du SetApplicationMainFormOnTaskBar(Application, false);
              setzt, dann wird die Anwendung nicht in der Taskbar angezeigt.

              Comment

              Working...
              X