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

VB.NET Discussion :

méthodes load et main


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    988
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 988
    Par défaut méthodes load et main
    Bonjour,

    J'aimerais déclarer une variable static mais je reçois le message suivant
    "Static n'est pas valide dans une declaration de variable membre"

    Comment puis je faire pour que la variable que je désuire declarer statique le soit

    Je ne parviens pas non plus à declarer une variable globale, au même endroit que celui où je declare les autres variables privées.

    Pouvez vous me dire comment faire.


    Merci à vous
    Pour finir, j'ai crée un moduile qui conteint une procedure sub Main() qui crée une instance de la classe que je veux charger en premier.
    Mais au lieu de cela, il y a une repetition incessante de creation d'une nouvelle instance de cette classe.

    Pouvez vous me dire comment faire pour créer cette méthode main.
    Sur le cours de MrLasserrer il est question d'une fenêtre splash; n'y a til pa plus facile car j'ai besoin d'enseigner ce concept très simplement.

    Merci beaucoup à vous.

    Cordialement.

    Nathalie

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 202
    Par défaut
    static est un mot clé en qui en c# équivaut à shared en vb qui est utilisé pour définir un membre
    static en vb sert au sein d'un membre et n'est pas spécialement recommandé


    quel static voulais tu ? (ou que voulais tu fais avec ?)

    sinon pour ce qui est de la portée des membres et des types de membres, le cours de lasserre est de mémoire assez explicite


    ensuite pour le démarrage de l'appli, en vb il y a 2 possibilités, démarrage par un sub main, ou démarrage sur une form
    le choix se fait dans les propriétés du projet

    si vous choisissez un démarrage sur un sub main il faut déclarer un public sub main sur un module (peut etre qu'un shared sub main sur une classe peut aller ...)

    pour faire un splash sans passer par un truc tout fait, il suffit de démarrer sur form1
    que form1 contienne un timer qui sur l'évènement tick fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    dim f as new form2
    f.show
    me.dispose
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    988
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 988
    Par défaut variables statique et globales
    Bonsoir et merci de ta réponse.
    En fait , par static j'entends la même signification qu'en java , c'est à dire une variable de classe qui n'est pas répétée au niveau de chaque instance.
    Sinon, est ce qu'une variable globale a la même signification qu'une variable publique en vb.net

    Merci encore de ton aide.
    Cordialement.
    Nathalie

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 202
    Par défaut
    dans ce cas c'est shared que tu cherches

    pour le "globale" tu veux dire globale pour qui ?

    d'ailleurs, pourquoi fais tu du vb au lieu du c#, venant de java ???
    c'est fait pour pas etre dépaysé en théorie !!
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    988
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 988
    Par défaut méthode load et main, mot clé Shared et méthode showDialog
    Bonsoir et merci de ta réponse.
    En effet, c'est bien le mot clé Shared qui convient et qui est l'équivalent, si j'ai bien compris,de static en java.
    Ma question est la suivante : j'ai constaté que si je n'utilise pas le mot clé Shared pour créer ma méthode main, cela ne fonctionne pas.
    Voici le code utilisé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Public Shared Sub Main
    Dim thesaurus_form1= New thesaurus_form
    thesaurus_form.ShowDialog()
    D'après ce que j'ai cru comprendre d'une explication en anglais, la méthode est statique car aucune instance de la classe thesaurus_form ne va être créée pour demarrer l'application.
    Il se trouve qu''en java, même si une méthode est statique, elle est créée en mémoire à la création de la classe, si je ne me trompe.
    Or la création d'une classe en mémoire, en java, se fait dès la première instanciation de cette classe.
    J'ai donc du mal à comprendre quel est le concept en vb.net.Pouvez vous essayer de me l'expliquer simplement car je dois le reexpliquer tout aussi simplement à un étudiant.

    Merci beaucoup à vous.

    Par ailleurs, je ne parviens toujours pas à faire la différence entre l'evènement Load et l'appel de la méthode show ou showdialog.
    En quoi consiste le fait de charger une fenêtre: de la voir à l'écran, de la créer en mémoire( ce qui est normalement le rôle de l'instruction New)ou peut être autre chose??.
    Il est vrai que dans un cas , Load est un evènement alors que showDialg est une méthode, mais est ce la seule différence??
    J'ai besoin d'y voir clair sur ce point.

    Merci beaucoup encore de votre aide car j'ai également besoin de reexpliquer cela très simplement.


    Pour finir, je ne comprends pas pourquoi lorsque j'utilise l'appel à la méthode Show, je ne parviens pas à voir à l'écran l'instance thesaurus_form1 de la classe thesaurus_form( dans mon code ci-dessus j'utlise la méthode ShowDialog() et cela fonctionne)


    Merci encore infiniment à vous de votre aide.

    Bien cordialement.

    Nathalie

  6. #6
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 202
    Par défaut
    deja ca serait bien qu'on continue le dialogue dans un seul poste, non seulement vous en avez ouvert plusieurs pour la même chose, mais en plus on est obligé de se répondre un peu sur les deux

    sinon j'ai l'impression qu'il te manque les bases
    et venir poser des questions ici pour acquérir les bases de la POO ca va peut etre etre un peu long, d'autant plus qu'il y a surement des tas de tutoriels sur le net


    une classe est un moule, qui permet d'obtenir des instances sur ce moule
    les membres partagés (ou shared ou static) sont communs à toutes les instances, et ca pour tous les langages POO je pense
    en .net on peut y accéder grace au moule sans avoir d'instance
    à la première instanciation ou au premier appel d'un membre shared, la classe est compilée (car .net compile à la volée)
    et si ton sub main n'est pas shared, il faudrait une instance pour l'appeler !
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

Discussions similaires

  1. utiliser une variable d'une méthode dans le main
    Par yacin87 dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 26/03/2010, 09h54
  2. Utiliser la méthode .load
    Par kahoerre dans le forum Excel
    Réponses: 7
    Dernier message: 11/03/2010, 17h22
  3. la méthode load() de QTranslator
    Par maroua_mm dans le forum Qt
    Réponses: 3
    Dernier message: 17/02/2010, 11h20
  4. appel de la méthode load
    Par new_wave dans le forum VB.NET
    Réponses: 1
    Dernier message: 17/05/2009, 20h43

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