J'utilise le constructeur Borland C++. J'ai une application où je veux que le formulaire principal soit caché jusqu'à ce qu'un bouton soit pressé sur un formulaire différent. J'ai mis la valeur Visible sur la mainform à false, mais elle apparaît quand je lance le programme. Quelqu'un sait quoi faire?Comment est-ce que je peux cacher mon MainForm quand mon programme commence?
Répondre
Regardez la propriété TApplication ShowMainForm. Voici un exemple basé sur les instructions du online help.
Définir la principale forme visible sur false.
Dans le menu, sélectionnez Projet -> Afficher la source pour afficher le fichier projet principal.
Ajoutez le code suivant après l'appel à Application-> CreateForm et avant l'appel à Application-> Exécuter.
Application-> ShowMainForm = false;
Vous devriez vous retrouver avec quelque chose comme ça.
try
{
Application->Initialize();
Application->MainFormOnTaskBar = true;
Application->CreateForm(__classid(TMainForm), &MainForm);
// extra code to hide main form
Application->ShowMainForm = false;
Application->Run();
}
Merci beaucoup! – Ben313
Il y a une démo qui vient avec C++ Builder qui fait cela, il peut être trouvé dans les démos \ cpp \ apps \ twoforms
« First » est la forme avec le bouton qui indique « Second »
Le gestionnaire d'événement OnClick du bouton crée le nouveau formulaire avec new, puis appelle ShowModal() Vous pouvez utiliser simplement Show() s'il ne s'agit pas d'un formulaire modal.
Je ne sais pas comment les résumés beaucoup de C++ Builder choses, mais si elle ne fonctionne pas et que vous avez un WinMain() puis regardez un 'appel ShowWindow' après la' CreateWindow' - vous pouvez appeler SW_SHOWMINIMIZED ou similaire. Si vous ne pouvez pas voir WinMain, vous devrez creuser dans leur cadre pour trouver le WinMain et voir comment vous pouvez changer cela. – Rup