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 :

appel de procedure qui ne fonctionne pas [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 625
    Par défaut appel de procedure qui ne fonctionne pas
    bonjour je voudrai appeler une procedure mais cela ne fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Private Sub btnUneInfo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUneInfo.Click
         Call titre_visionneur(LectureLigne)   
        End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     Public fonction titre_visionneur(ByVal lectureligne)
            Dim i As Integer
            Dim results() As String
            results = lectureligne.Substring(0, lectureligne.Length - 1).Split("\")
            For i = 5 To UBound(results)
                Me.Label2.Text = titre & "lecture de " & results(i)
            Next i
     
        End fonction

  2. #2
    Membre Expert Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Par défaut
    Si c'est une procédure pourquoi déclares-tu :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Public fonction 
         End fonction
    (Nb : En vb.NET une fonction se déclare function)

    Ici tu dois utiliser une Sub.
    Egalement tu dois donner le type de Lectureligne que tu passes en paramètre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public sub titre_visionneur(ByVal lectureligne as ?????? )
            Dim i As Integer
            Dim results() As String
            results = lectureligne.Substring(0, lectureligne.Length - 1).Split("\")
            For i = 5 To UBound(results)
                Me.Label2.Text = titre & "lecture de " & results(i)
            Next i
     
        End sub

  3. #3
    Membre éclairé Avatar de DeWaRs
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Décembre 2006
    Messages
    291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 291
    Par défaut
    Bonjour,

    Qu'entends-tu par "cela ne fonctionne pas"?

    Rentres-tu dans tes fonctions ?
    Met un point d'arret quand tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call titre_visionneur(LectureLigne)
    Et sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    results = lectureligne.Substring(0, lectureligne.Length - 1).Split("\")
    afin de voir si tu rentres dans au moins une des deux fonctions.

    Cordialement.

    DeWaRs

  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
    Citation Envoyé par chuspyto Voir le message
    cela ne fonctionne pas
    que de précisions !

    sinon tu peux aussi apprendre à débugger du code (points d'arrets, pas à pas ...)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 625
    Par défaut
    J ai essayé avec du public sub et aucun résultat ni message erreur pour cela que je dis que cela ne fonctionne pas. De plus j ai essaye de déclarer lectureligne en string est rien

  6. #6
    Membre Expert Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Par défaut
    Ton code n'étant pas très "parlant" de ce que tu souhaites faire, peux-tu nous en dire plus ? Que dois-faire cette fonction ? Que vaut lectureligne et que veux-tu faire avec ? Etc etc

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 625
    Par défaut
    voici le message d'erreur que j'obtient:

    impossible de convertir une valeur de type 'System.Data.OleDb.OleDbDataReader' en 'String'.

  8. #8
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Citation Envoyé par chuspyto Voir le message
    voici le message d'erreur que j'obtient:

    impossible de convertir une valeur de type 'System.Data.OleDb.OleDbDataReader' en 'String'.
    Il faut lire les ligne avant de les utiliser en tant que chaîne de caractères.

    Voir l'exemple dans le lien.
    system.data.oledb.oledbdatareader
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  9. #9
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Bonjour,
    Citation Envoyé par chuspyto Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     Public fonction titre_visionneur(ByVal lectureligne)
            Dim i As Integer
            Dim results() As String
            results = lectureligne.Substring(0, lectureligne.Length - 1).Split("\")
            For i = 5 To UBound(results)
                Me.Label2.Text = titre & "lecture de " & results(i)
            Next i
     
        End fonction
    Détaillons ton code
    1) Outre la remarque de _Ez3kiel qui fait que ton code ne compile pas.

    2)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            For i = 5 To UBound(results)
    Fait que si tu n'as que 2 \ par exemple, tu n'afficheras rien

    3)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            For i = 5 To UBound(results)
                Me.Label2.Text = titre & "lecture de " & results(i)
            Next i
    Provoque uniquement l'affectation du dernier élément dans Label2 (les autres sont systèmatiquement écrasée par le suivant, sauf le dernier).


    Donc ton code pourrai se résumer à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        Public Sub titre_visionneur(ByVal lectureligne As String)
            Dim results() As String = lectureligne.Substring(0, lectureligne.Length - 1).Split("\")
            Me.Label2.Text = titre & "lecture de " & results(results.Count - 1)
        End Sub

    A+, Hervé.

    [Edit]
    J'écrivais pendant que ton post est passé.

    Si tu nous montres le code et explique, nous pourrons t'aider.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  10. #10
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Citation Envoyé par chuspyto Voir le message
    Pour info ou dois je insérer cette ligne de code?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            Me.Label2.Text = titre & "lecture de " & System.IO.Path.GetFileNameWithoutExtension(LectureUneInfo(40))
    Ben là, c'est le fonctionnement de ton programme. Je ne peux pas savoir à ta place à quel moment tu veux l'afficher.

    Citation Envoyé par chuspyto Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Private Sub btnUneInfo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUneInfo.Click
         Call titre_visionneur(LectureLigne)   
        End Sub
    Tu le faisait ici, en appelant titre_visionneur. C'est donc dans ta btnUneInfo_Click à la place de titre_visionneur(LectureLigne).
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/09/2013, 09h40
  2. [SQL] Requête à jointure qui ne fonctionne pas
    Par Bensor dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/12/2004, 16h10
  3. Jointure externe qui ne fonctionne pas
    Par Guizz dans le forum Langage SQL
    Réponses: 3
    Dernier message: 05/02/2004, 12h26
  4. CREATEFILEMAPPING qui ne fonctionne pas???
    Par Jasmine dans le forum MFC
    Réponses: 2
    Dernier message: 06/01/2004, 19h33
  5. UNION qui ne fonctionne pas
    Par r-zo dans le forum Langage SQL
    Réponses: 7
    Dernier message: 21/07/2003, 10h04

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