Bonjour à tous

J'ai une application qui à plusieurs form à afficher et je voudrais pouvoir choisir sur quel Ecran les forms doivent s'afficher.

Avec FMX on a l'objet Screen qui répertorie tous les affichages et qui pour chacun nous fornit un TDisplay par écran avec les coordonnées de celui-ci.

Jusque là pas de problème.

J'ai fait une boite de dialogue qui permet de choisir pour chaque Form l'écran sur lequel elle doit s'afficher. là également cela fonctionne.

Sauf qu'au moment de positionner ma form, elle se réduit dans la barre des taches et lorsque je clique sur l'icone de l'application, elle apparait sur l'écran principal.

Savez-vous comment faire ?

Voici ce que j'utilise pour positionner

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
// Méthode chargée de Positionner la Form
void __fastcall TPrincipaleForm::Positionner(void)
{
	// On récupère la Fenetre (Mon objet fenetre contient le Nom de la fenetre qui est le
       // Caption et un identifiant de l'écran sur lequel elle doit s'afficher)
	TFenetre *Fenetre = Parametres->FenetreDeNom(Caption);
 
	// On récupère le Display de l'écran correspondant
        // La fonction IndexEcranDID retourne l'index de l'écran correspondant dans les Displays
	TDisplay Display = Screen->Displays[Parametres->IndexEcranDID(Fenetre->IdEcran)];
 
	// On va positionner l'écran
	SetBoundsF(Display.BoundsRect());
}
Merci d'avance pour votre aide.