IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Pb de fonction ( static / non static )


Sujet :

Windows Forms

  1. #1
    Membre actif Avatar de Luffy49
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 399
    Points : 247
    Points
    247
    Par défaut Pb de fonction ( static / non static )
    Alors voilà mon prog :

    2 windows forms

    windows form1 avec plusieur fonction dont une qui s'appelle init_form

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public void init_form(int max)
            {
                Program.random_nb(max);
                Dernier_coups.Text = "";
                textBox1.Text = "";
                Titre.Text = "Indiquez une valeur entre 1 et " + max;
            }
    et une form2 qui a juste un bouton ressayer je voudrait que ce bouton ferme la form2 et lance la procédure init_form voila le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
            private void button1_Click(object sender, EventArgs e)
            {
     
                int max1 = Program.max;
                Form1.init_form(max1);
                Close();
            }
    j'ai une erreur du type :

    Erreur 1 Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique 'WindowsApplication1.Form1.init_form(int)' C:\Documents and Settings\Luffy\Mes documents\Visual Studio 2005\Projects\tournoiCS\WindowsApplication1\Form2.cs 22 13 WindowsApplication1

  2. #2
    Membre habitué Avatar de Khrysby
    Homme Profil pro
    Chef de projet
    Inscrit en
    Avril 2005
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Chef de projet

    Informations forums :
    Inscription : Avril 2005
    Messages : 239
    Points : 144
    Points
    144
    Par défaut
    Là je ne vois pas... Mais es-tu sur que Program.max à bien une valeur ?

  3. #3
    Membre actif Avatar de Luffy49
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 399
    Points : 247
    Points
    247
    Par défaut
    Oui puisque dans Program.cs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    using System;
    using System.Collections.Generic;
    using System.Windows.Forms;
     
    namespace WindowsApplication1
    {
     
     
        static class Program
        {
            public static int nbrandom;
            public static int essaie = 15;
            public static int max = 1000;
    et puis dans ma form1 j'ai plusieur appel de type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      Program.essaie = 6;
                Program.max = 500;
                init_form(Program.max);
    qui ne pose aucun problème

  4. #4
    Membre habitué Avatar de Khrysby
    Homme Profil pro
    Chef de projet
    Inscrit en
    Avril 2005
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Chef de projet

    Informations forums :
    Inscription : Avril 2005
    Messages : 239
    Points : 144
    Points
    144
    Par défaut
    Arf... Bizard... t'as essayer de mettre en commentaire ?

  5. #5
    Membre actif Avatar de Luffy49
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 399
    Points : 247
    Points
    247
    Par défaut
    Oui cela me donne toujours la même erreur.

    Je suis débutant en c# donc je me pose la question si ce que je fais est vraiment faisable.

    Je lance une procédure qui agit sur la form1 depuis une form2 cela pose des problème ou pas ?

  6. #6
    Membre régulier
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Avril 2005
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2005
    Messages : 64
    Points : 95
    Points
    95
    Par défaut
    salut,
    je pense que le pb vient du faite que Form1 n'est pas une instance mais une classe.
    je te consielle de revenir sur program.cs et déclarer une instance public de ton form1 ex :

    public Form1 frmForm1;

    [STAThread]
    static void Main()
    {
    ...
    frmForm1=new Form1();
    Application.Run(frmForm1);
    }

    et dans ton form2 change Form1.init_from par frmForm1.init_..

  7. #7
    Membre actif Avatar de Luffy49
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 399
    Points : 247
    Points
    247
    Par défaut
    En effet j'ai tester et le problème venait de là.

    En tous cas merci du coups de main

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Pointeur sur fonction membre non static
    Par robinsondesbois dans le forum Débuter
    Réponses: 11
    Dernier message: 02/07/2014, 16h57
  2. Pointeur sur fonction membre non static
    Par robinsondesbois dans le forum Débuter
    Réponses: 6
    Dernier message: 16/04/2014, 13h36
  3. Appel non conforme d'une fonction membre non static
    Par kryptong dans le forum Débuter
    Réponses: 3
    Dernier message: 16/04/2012, 17h00
  4. appel static/non static
    Par greg08 dans le forum Langage
    Réponses: 3
    Dernier message: 27/11/2008, 10h25
  5. static / non-static ???
    Par benkunz dans le forum Langage
    Réponses: 4
    Dernier message: 05/04/2006, 09h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo