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 6 et antérieur Discussion :

[VB6] Click droit sur MSHFlexGrid


Sujet :

VB 6 et antérieur

  1. #1
    Membre habitué Avatar de sab_etudianteBTS
    Inscrit en
    Juin 2006
    Messages
    211
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 211
    Points : 173
    Points
    173
    Par défaut [VB6] Click droit sur MSHFlexGrid
    Bonjour,
    Voila je dispose d'un MSHFlexGrid dans lequel il y a des données provenant d'une base de données SQL. Je voudrait que lorsqu'on click (click droit de la souris) sur une ligne, ca m'ouvre un autre form et dans un textbox ca m'affiche la valeur sur laquelle g clické.
    Voila mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub MSHFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
     
        If Button = vbLeftButton Then
            'Ouvre la feuille correspondant au click Gauche
            FrmAntivirus.Show
        Else
            If Button = vbRightButton Then
                'Ouvre la feuille correspondant au click droit
                FrmPackage.Show
                FrmPackage.Text1=MSHFLexGrid1.MouseRow
            End If
        End If
     
    End Sub

    Voila quand je fais ".MouseRow", ca me retourne "l'indice" de la ligne qur laquelle g clické et ce n'est pas ce que je veux!

    Voila j'espère que g été claire
    Merci pour votre aide

  2. #2
    Membre éclairé
    Avatar de Theocourant
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 618
    Points : 739
    Points
    739
    Par défaut
    Bonjour,

    Tout d'abord il faudrait que tu édite ton message pour rajouter le tag [VB6] dans le titre et rajouter les balises de code autour du code que tu as donné (tu sélectionne le texte et tu cliques sur le #).

    Ensuite la propriété pour atteindre les valeurs dans un MSHFlexGrid est : TextMatrix
    Pour son utilisation voir l'aide en ligne.

    De plus il y a une petite erreur dans ton code, pour écrire dans un TextBox, il faut utiliser la propriété Text.

    Cela donnera quelque chose comme çà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FrmPackage.Text1.Text=MSHFLexGrid1.TextMatrix(indice i,indice j)
    Bonne continuation

    Théo

  3. #3
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Salut

    Et pour compléter ce que t'a donné Théo, utilises MouseRow et MouseCol pour récupérer les indices de la case où tu as cliqué.

  4. #4
    Membre habitué Avatar de sab_etudianteBTS
    Inscrit en
    Juin 2006
    Messages
    211
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 211
    Points : 173
    Points
    173
    Par défaut
    Salut,
    g essayé avec le TextMatrix, mais d'ou sort les "indice i" et "indice j"?? G essayé en mettant les x et y a la place mais ca ne fonctionne pas, ca me met un message d'erreur: "Indice hors limite".
    Est ce qu'on pourrait m'expliquer SVP?
    Merci

  5. #5
    Membre habitué Avatar de sab_etudianteBTS
    Inscrit en
    Juin 2006
    Messages
    211
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 211
    Points : 173
    Points
    173
    Par défaut
    Voila après un peu de réflexion, g compris ce qu'il fallait mettre a la place de "indice i" et "indice j" mais ca ne fonctionne pas tout a fait correctement comme je voudrait, car sur n'importe quelle ligne que je clique ca me renvoie toujours la mm valeur. C'est vraiment bizarre!
    voila ma ligne de code:

    FrmPackage.Text1.Text=MSHFLexGrid1.TextMatrix(MSHFlexGrid1.Row, MSHFlexGrid1.Col)

  6. #6
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Salut,
    g essayé avec le TextMatrix, mais d'ou sort les "indice i" et "indice j"??
    Cà alors !
    T'as même pas une petite idée ?
    Alors moi j'en ai une et une bonne : ouvrir ton aide en ligne et voir ce que tu obtiens avec le mot TextMatrix.... (encore que ce soit évident... d'instinct... : principe des mots croisés...)

  7. #7
    Membre habitué Avatar de sab_etudianteBTS
    Inscrit en
    Juin 2006
    Messages
    211
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 211
    Points : 173
    Points
    173
    Par défaut
    jmfmarques, je suis dsl mais je n'ai jms utilisé l'aide en ligne! Je ne sais mm pas si je l'ai! Je suis débutante et je ne m'y connais pas vraiment, alors si tu pouvait m'aider ce serait gentil stp.

  8. #8
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Dans ta barre d'outil : ? ou Aide ou Help (selon ta version... et si VB a été installé correctement avec les CD qui accompagnent sa vente régulière)
    Un clic dessus et ====>>> on voit ce que c'est !

  9. #9
    Membre habitué Avatar de sab_etudianteBTS
    Inscrit en
    Juin 2006
    Messages
    211
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 211
    Points : 173
    Points
    173
    Par défaut
    Ok, merci! Finalement g trouvé
    Je met la ligne de code pour ceux à qui ca intéresserait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FrmPackage.Text1.Text = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.MouseRow, MSHFlexGrid1.MouseCol)
    Voila dès qu'on clique (avec le click droit) sur une ligne ca affiche son contenu dans un textbox.

    Merci a ceux qui ont bien voulu écouter mon problème

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

Discussions similaires

  1. Click droit sur le CDROM
    Par sitirna dans le forum C++Builder
    Réponses: 8
    Dernier message: 21/09/2006, 14h10
  2. click-droit sur un exécutable
    Par jakouz dans le forum Langage
    Réponses: 3
    Dernier message: 27/09/2005, 14h49
  3. Réponses: 1
    Dernier message: 28/08/2005, 07h30
  4. Event Click droit sur ComboBox
    Par AF_STjohn dans le forum C++Builder
    Réponses: 8
    Dernier message: 29/04/2005, 11h48
  5. [JSP][Javascript] click droit sur un lien
    Par Stessy dans le forum Servlets/JSP
    Réponses: 22
    Dernier message: 24/09/2004, 10h14

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