Mauvaise ouverture de form

doublegreg Messages postés 4 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 16 juin 2009 - 15 juin 2009 à 10:57
doublegreg Messages postés 4 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 16 juin 2009 - 16 juin 2009 à 10:25
Bonjour, j'ai un problème lorsque je réouvre un form après l'avoir fermé une première fois.
Je fais pourtant bien attention qu'elle soit bien fermée et dans ce cas je l'instancie de nouveau.
Cela ce passe dans une switch case vois un bout du code :

private void run(int choice)
        {
            switch (choice) {
                case 0:
                    opcClient.WriteItem(".INIT", true);
                    opcClient.WriteItem(".HANDOFF_AVAIL", true);
                    opcClient.WriteItem(".I_GO", true);
                    carrierDetectUndetect = new CarrierDetectUndetect();
                    carrierDetectUndetect.CarrierIs += new CarrierDetectUndetect.ChoiceCarrierIsEventHandler(carrierDetectUndetect_CarrierIs);
                    carrierDetectUndetect.Show();
                    break;
                   
                case 1:
                    loadPortChoice = new LoadPortChoice();
                    loadPortChoice.LPAdded += new LoadPortChoice.AddLPEventHandler(loadPortChoice_LPAdded);
                    loadPortChoice.Show();
                    break;
                   
                case 4:
                    opcClient.WriteItem(".I_VALID", true);
                    Choice = 5;
                    run(Choice);
                    break;
                   
                case 5:
                    opcClient.ReadItem(".O_L_REQ", out objectLoadValue);
                    opcClient.ReadItem(".O_U_REQ", out objectUnloadValue);
                    if((bool)objectLoadValue == true)
                    {
                        flagL_REQ = true;
                        Choice = 6;
                    }
                    if((bool)objectUnloadValue == true)
                    {
                        flagU_REQ = true;
                        Choice = 6;
                    }
                    run(Choice);
                    break;
                   
                case 6:
                    opcClient.WriteItem(".I_TR_REQ", true);
                    break;
                   
                case 7:
                    opcClient.WriteItem(".I_BUSY", true);
                    Choice = 2;
                    run(2);
                    break;
                   
                case 2:
                    //
                    //C'est ici que cela ce passe
                    //
                    if(!carrierDetectUndetect.Created)
                        carrierDetectUndetect = new CarrierDetectUndetect();
                    carrierDetectUndetect.Show();
                    break;
                   
                case 8:
                    opcClient.WriteItem(".I_BUSY", false);
                    opcClient.WriteItem(".I_TR_REQ", false);
                    opcClient.WriteItem(".I_COMPT", true);
                    break;
                   
                case 9:
                    opcClient.WriteItem(".I_COMPT", false);
                    Choice = 10;
                    run(Choice);
                    break;
                   
                case 10:
                    opcClient.WriteItem(".I_VALID", false);
                    break;
            }
        }

merci d'avance

4 réponses

krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
15 juin 2009 à 11:07
Tu rencontres quelle erreur ?

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
0
doublegreg Messages postés 4 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 16 juin 2009
15 juin 2009 à 11:25
Il n'y a pas d'erreur juste un mauvaise affichage du formulaire, en fait il apparait partiellement puis il y a écrit ("CarrierDetectUndetect pas de réponse").
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
15 juin 2009 à 20:36
Et que fait cette form de bien particulier lors de son chargement ?

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
doublegreg Messages postés 4 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 16 juin 2009
16 juin 2009 à 10:25
En fait la form qui devrait s'ouvrir correctement est une fenêtre toute
simple comprenant un combobox. Peut être est ce du par le fait que je
passe des parametre par evenement, mais je ne pense pas.


Une autre idée ??


Merci (ps : voici le code de la form qui doit s'ouvrir)

public partial class CarrierDetectUndetect : Form
{
publicevent ChoiceCarrierIsEventHandler CarrierIs;
publicdelegatevoid ChoiceCarrierIsEventHandler(string carrier);
publicstring Carrier;
public CarrierDetectUndetect()
{
InitializeComponent();
comboBoxCarrierIs.Items.AddRange(newobject[]{".CARRIER_PLACED",".CARRIER_REMOVED"});
}

privatevoid ButtonOKClick(object sender, EventArgs e)
{
Carrier = comboBoxCarrierIs.SelectedItem.ToString();
if(CarrierIs!=null)
CarrierIs(Carrier);
this.Dispose();
}
}
0
Rejoignez-nous