Une autre erreur? (Programmation Visual Basic)

Résolu
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   -  
Codeur32547 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention   -
Selon moi, il y a une erreur non? J'ai écrit pour que le logiciel reste en arrière plan et, Visual Studio écrit que "e.Cancel = True" est une erreur. Quelqu'un peut m'aidez? Merci d'avance!

Public Class Accueil
    Dim closeForm As Boolean = False
    Private Sub Accueil_Load(sender As Object, e As EventArgs) Handles MyBase.FormClosing
        If (closeForm = False) Then
            e.Cancel = True
            Me.Hide()
            Me.WindowState = FormWindowState.Minimized
            Notif.ShowBallonTip(500, "Exécution", "Nous sommes toujours en cours d'exécution. Cliquez sur le bouton dans la barre des tâches pour réouvrir le logiciel.", ToolTipIcon.Info)
        End If
    End Sub
End Class

A voir également:

7 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, n'as-tu pas un message d'erreur plus précis?
as-tu vérifié si Cancel était une propriété du type EventArgs?
que penses-tu obtenir avec cette ligne de code?
0
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   1
 
Je vais vérifiez ça tout de suite!
0
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   1
 
Voila une capture d'écran que j'ai pris. J'espère quelle vous seras utile!
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
et si tu supprimes la ligne
 e.Cancel = True
?
pourquoi as-tu ajouté cette ligne, à quoi penses-tu qu'elle serve?
0
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   1 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Pour annuler la fermeture?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention  
 
il me semble que ton code s'occupe de l'ouverture, pas de la fermeture.
0
NHenry Messages postés 15219 Date d'inscription   Statut Modérateur Dernière intervention   365
 
Private Sub Accueil_Load(sender As Object, e As EventArgs) Handles MyBase.FormClosing 


FormClosing a une signature spécifique, différente (mais compatible) de Load.
Utilise le bon prototype de gestionnaire d'événement.
0
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   1
 
Le quelle tu crois et comment accédez au gestionnaire? Merci d'avance!
0
Utilisateur anonyme
 
Bonjour

j'ai essayé ton code, avec l'exe compilé, pas avec VS, car avec VS c'est pas vraiment l'exe.

Dans un premier temps, en commentant la ligne de notification (j'avais pas mis de NotifyIcon dans mon winform de test) et tout c'est bien passé.

Ensuite, j'ai ajouté un NotifyIcon, que j'ai appelé Notif.
Là j'ai une erreur de précompilation, la méthode ShowBallonTip n'existe pas, c'est ShowBalloonTip

Une fois ceci corrigé ça marche aussi, enfin, je ne voie pas le ballon et je n'ai pas de bouton dans la barre des taches (il me semble qu'avec Hide c'est normal), j'ai donc du arrêter le logiciel avec le gestionnaire des taches.

Donc même si ça ne fait pas exactement ce que tu décris dans ton ballon, y'a pas d'erreur.

Donc, il nous faudrait plus d'infos, le message d'erreur exact par exemple, ainsi que le contenue des variables au moment où ça plante (avec des espions).

Aussi, pourquoi, y avait il une erreur dans le nom de méthode ShowBalloonTip, aurais tu écris ton propre système de notification, auquel cas, ne serait pas dans ce sytème qu'il y aurait une erreur?
0
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour Wishmeril,

pour le "showTipBalon", c'est juste que j'ai du le recopier à la main car il est sur un autre ordinateur (Visual Studio) et j'ai surement oublier le "o" mais, je peux t’assurer qu'il est bien présent. Ensuite, le "Hide". Lui, je l'ai mis après "showTipBalloon" et il fonctionne. Puis, ça me ferait un grand plaisir tantôt de vérifier le message d'erreur.

Coridalement, Ludvic.
0
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   1
 
Mon message d'erreur est sur la capture d'écran de la réponse de yg_be. J'espère quelle vous seras utile!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
 
Ha ben oui, parce que la signature d'un évènement FormCloasing, n'est pas celle que tu as mise.

EventArgs c'est le type chapeau de tous les paramètres d'évènements des outils Framwork, mais pour FormClosing, on utilise un type dérivé dédié
Il t'aurais suffit de quelques instants sur l'aide en ligne pour t'en rendre compte
https://docs.microsoft.com/fr-fr/dotnet/api/system.windows.forms.form.formclosing?view=netcore-3.1

(si le code exemple n'est pas en VB, tu peux le changer en haut à droite de la page, en cliquant sur le nom du langage, à coté de "signet"

Dans mon projet, j'avais déjà du code dans cet évènement, et puis mon formulaire n'a pas le même nom, alors j'ai copié le contenu de la méthode, mais pas sa déclaration => pas d'erreur pour moi


0
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   1
 
Et donc... quelle est mon erreur? (J'ai pas tout compris)
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
il s'agit de _Load
d'où ma question, sans réponse, à propose du but du
Cancel=true
0
Utilisateur anonyme > Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention  
 
Es tu allé voir le lien que je t'ai donné?
0
Utilisateur anonyme > Utilisateur anonyme
 
PS, tu dis ne pas avoir tout compris, c'est symptomatique d'un apprentissage sur le tas sans prendre la peine d'apprendre les bases, parce que "méthode", "signature", "type dérivé" se sont des notions clés de VB.Net, qu'on apprend (en théorie) dans le début de sa formation.
Le meilleur conseil que je puisse te donner est de laisser ton projet de coté quelques jours pour suivre un cours en ligne
celui là par exemple https://plasserre.developpez.com/cours/vb-net/ même s'il s'adresse aux anciens codeurs de VB6 et qu'il prend l'objet pour un effet de mode ou encore celui d'openclassroom, moins accessible mais bien orienté objet.
0
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   1 > Utilisateur anonyme
 
Dans le premier site que tu m'as envoyée Whismeril, ça parle de C #.
Pour le deuxième, ça montre tout plein de trucs que j'ai déjà vu!
0
Ludvic. Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   1
 
Merci à tous! Selon moi, comme Whismeril à dit, je vais en apprendre beaucoup plus. Merci pour votre aide!
0
Codeur32547 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
Est-ce une WindowsAppForm ?
Si oui essay simplement Me.Hide(), qui cachera la fenêtre.
Si ça peut t'aider.

Cordialement,
Codeur32547
0
Utilisateur anonyme
 
Bonjour, as tu lu le code qu'il utilises?
Notamment la ligne 6
0
Codeur32547 Messages postés 20 Date d'inscription   Statut Membre Dernière intervention   > Utilisateur anonyme
 
Re
Effectivement, je n'ai pas pris le temps de bien regarder le code, désolé !
Bonne journée
0