cs_grami
Messages postés7Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention10 janvier 2007
-
15 déc. 2006 à 11:24
Whismeril
Messages postés18417Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 5 juin 2023
-
2 juil. 2017 à 08:39
bonjour,
voila mon probleme : jai une fenetre principale de la qu'elle j'ouvre une autre fenetre, juske la c bon le probleme et que qd je clik une autre fois sur le bouton pour ouvrir jai une autre fenetre qui s'ouvre ( exemple pour "a propos" je pe avoir 2 ou plus ouverte en meme temp )
Nikoui
Messages postés794Date d'inscriptionvendredi 24 septembre 2004StatutMembreDernière intervention19 août 200811 15 déc. 2006 à 11:38
En mettant le bout de code que tu cites dans ta méthode, tu instancie a chaque fois une nouvelle fenêtre. Plusieurs solutions à ton problème :
Dans le cadre de la fenêtre a propos, par exemple, tu peux l'afficher en "modale" (dans ce cas, il faudra que l'utilisateur la ferme avant de pouvoir revenir à la fenêtre précédente). Pour cela, remplace frm.Show() par frm.ShowModal();
Dans d'autre cas (ou tu ne veux pas qu'elle soit affichée en modale), tu peux soit déclarer ta fenêtre (frm) comme une variable de ta classe, et tester si elle est déjà affichée ou non avant de l'afficher le cas échéant.
cs_grami
Messages postés7Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention10 janvier 2007 15 déc. 2006 à 11:41
desole :)
bonjour,
voila mon probleme
: jai une fenetre principale de la qu'elle j'ouvre une autre fenetre,
jusque la c'est bon le probleme et que qand je clik une autre fois sur le
bouton pour ouvrir jai une autre fenetre qui s'ouvre ( exemple pour "a
propos" je peux avoir 2 ou plus ouverte en meme temp )
ISABELLE6558
Messages postés15Date d'inscriptionlundi 12 mai 2003StatutMembreDernière intervention 1 mars 2007 18 déc. 2006 à 22:29
Bonjour,
La réponse ShowDialog est une réponse qui peut ne pas être totalement satisfaisante dans la mesure où la fenêtre ouverte est modale. Aussi j'ai essayé le petit bout de programme ci dessous pour ouvrir une fenêtre unique non modale. Il y a un petit problème si on ouvre et on ferme plusieurs fois le fenêtre on a une erreur <ObjectDisposedException> que j'attrape mais celà ne me satisfait pas totalement, je préfèrerai une appli sans erreur.Il semble que _instance soit supprimé mais la variable n'est pas null Pourquoi cette erreur se produit-elle ?
public partial class Apropos : Form
{
private static Apropos _instance = null;
private Apropos()
{
InitializeComponent();
}
public static void ShowUnique()
{
if (_instance == null)
_instance = new Apropos();
else
_instance.Focus();
DevLama
Messages postés356Date d'inscriptionmercredi 13 avril 2011StatutMembreDernière intervention18 novembre 202110 2 juil. 2017 à 00:01
Bonsoir, Si ton problème reside sur le faite que tu ouvre plusieurs formulaires lorsque tu clique sur le Bouton alors que le formulaire était deja lancé, Si tu peux créer un Variable de static dans ton formulaire Principale qui q chaque qu'elle est a true qu'elle n'ouvre plus un formulaire
Whismeril
Messages postés18417Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 5 juin 2023624 2 juil. 2017 à 08:39
30 juin 2017 à 16:12