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
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:
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
méthode load et main, mot clé Shared et méthode showDialog
Bonsoir et merci de ta réponse pour ce qui concerne une méthode Shared.
A propos de lévènement load, d'après sa définition il se déclenche avant le premier affichage d'un contrôle.
Pour ce qui est de la form thesaurus_form1 créée dans le main, j'ai supprimé la procédure evènementielle thesaurus_form1_load qui est executée au chargement de l'instance thesaurus_form1.
Cela implique t il que l'evènement load est quand même declenché même si aucune procédure evènementielle est liée à cet evènement?
Merci encore de ta réponse.
Cordialement.
Nathalie Harbonne
méthodes add , load et main
Bonsoir et merci beaucoup encore de ton aide.
Comme tu le dis, List_view_term est la listview de la form nommée liste_termes
Tu dis que par le biais de la méthode add on ajoute un item
Oui, en effet, par le biais de la méthode add, on ajoute un element à la List_view_termes.
Puis je préciser qu'on ajoute un élément à la collection Items de la list_view_termes et que cet element est de type listviewitem.
Du fait qu'on ajoute un élement à list_view_termes,on le voit automatiquement à l'écran sinon, pour quoi l'ajouter...
Tu me dis que la méthode add retourne le listviewitem ajoute, c'est donc une fonction et pas une méthode
Une fois cet element retourné, la variable lvi peut pointer dessus pour modifier ses propriétés.
Je suppose que , comme en java, ce qui est retourné c'est l'adresse de l'élement listviewitem en cours et c'est ce qui est transmis à la variable lvi qui pointe alors dessus.
Par ailleurs, quel type de texte est concerné par la propriété ForeColor d'une listeview; je conçois qu'on utlise cette propriété pour un listviewitem, mais au niveau de la listview elle même , à quoi peut s'appliquer cette propriété.
Sinon, ecrire MyBase.load revient il à ecrire Me.Load; pour ma part, j'ai essayé avec Me.Load mais cela ne fonctionne pas.
S'il est vrai que MyBase.load revient à ecrire Me.Load, comment puis je faire pour qu'en écrivant Me.load, il n'y ait pas d'erreur du compilateur .
Pour finir, je ne comprends toujours pas pourquoi, quand ,dans la méthode Main j'utilise l'appel à la méthode ShowDialog() je parviens à visulaiser la form thesaurus_form1 et à la charger, alors qu'avec l'appel à la méthode show, cela ne fonctionne pas.
Dernière chose: lorsqu'on dit qu'avec l'évènement load on charge une fenêtre, le verbe charger signifie t-il simplement donner la possibilité de la voir à l'écran pour la première fois, ce qui justifie que cete evènement ne se produit que quand la fenête apparaît pour la première fois à l'écran
Code:
1 2 3 4 5 6 7
|
Public Shared Main()
thesaurus_form1= New thesaurus_form
thesaurus_form1.ShowDialog()
End Sub |
Pour ce qui est de la bible de Mr Lasserre, elle est à côté de moi, dans un document relié.
Je la lis quand j'ai besoin d'une explication, mais parfois, j'éprouve le besoin d'en savoir un peu plus.
Ceci dit, je suis loin de l'avoir lue en entier...penses tu qu'il est necessaire de la lire en entier avant de commencer ou de s'y referer quand on en a besoin uniquement?
Merci encore beaucoup de tes explications et de ton aide précieuse.
Bien cordialement.
Nathalie