OVH Cloud OVH Cloud

REP a Zoury

14 réponses
Avatar
JCM
Salut ZOURY

je t'ai joins ma table access in piece jointe, car cela
beug toujours avec le TreeView. as-tu pu regarder le
probleme

Cordialement
JCM

4 réponses

1 2
Avatar
Zoury
> le montant s'affiche dans le listview, mais il n'y pas de
lien entre celui-ci et le treeview, je m'explique si je
monte l'ascenseur du treeView cela ne monte pas celui du
ListView ce qui rend la lecture difficile



j'avais pas compris ça comme ça.. à quoi ressemble ton interface ? je vois
mal comment tu pourrais synchroniser un ListView avec le Treeview de cette
façon et aussi quelle en serait l'utilité ... pourquoi ne pas afficher le
montant à la suite du nom du type/sous-type ?



Je pense que l'insert into est mauvaise car cela beug sur
Call TransfertRecord



essai (non testé) :
Call ADOcnPC.Execute( _


"insert into " & tblModele & _
"(OrdreIDC, IDdepense, libelle, montant) values (" & _
ADOrst.Fields("OrdreIDC").Value & ", " & _
ADOrst.Fields("IDdepense").Value & ", " & _
ADOrst.Fields("libelle").Value & ", " & _
ADOrst.Fields("montant") & ")")

il faut concatener les valeurs provenant du Recordset ;O)


--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/
Avatar
JCM
Salut ZOURY

encore une question

j'ai ajouté sur ma form des checkBox pour limiter
l'affichage du treeview

si la checbox "Alimentaire" =true je veux développer
uniquement les noeuds alimentaire j'ai codé :

If (sTypeValue > sOldTypeValue) Then
Set nodX = TVdepense.Nodes.Add(, , sTypeKey,
nTypeValue)
If nodX = "ALIMENTAIRE" Then
nodX.Expanded = True
Else
nodX.Expanded = False
nodX.Sorted = False
End If
nodX.Tag = sValue ' sValue contient IDdepense
sOldSousTypeValue = ""

cela ne développe pas les autres noeuds, mais ne les
bloque pas. Je ne trouve pas le code qui me permet de les
bloquer

Encore mille fois merci pour ton aide
Cordialement
Jean Claude
-----Message d'origine-----
le montant s'affiche dans le listview, mais il n'y pas




de
lien entre celui-ci et le treeview, je m'explique si je
monte l'ascenseur du treeView cela ne monte pas celui du
ListView ce qui rend la lecture difficile



j'avais pas compris ça comme ça.. à quoi ressemble ton


interface ? je vois
mal comment tu pourrais synchroniser un ListView avec le


Treeview de cette
façon et aussi quelle en serait l'utilité ... pourquoi ne


pas afficher le
montant à la suite du nom du type/sous-type ?



Je pense que l'insert into est mauvaise car cela beug




sur
Call TransfertRecord



essai (non testé) :
Call ADOcnPC.Execute( _


"insert into " & tblModele & _
"(OrdreIDC, IDdepense, libelle, montant) values (" & _
ADOrst.Fields("OrdreIDC").Value & ", " & _
ADOrst.Fields("IDdepense").Value & ", " & _
ADOrst.Fields("libelle").Value & ", " & _
ADOrst.Fields("montant") & ")")

il faut concatener les valeurs provenant du Recordset ;O)


--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 -


http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml -


http://www.mztools.com/


.



Avatar
Zoury
> If nodX = "ALIMENTAIRE" Then



Je te conseilles de toujours préciser la propriété à laquelle tu accèdes, ça
rend le code plus clair et plus de t'éviter de mauvaise surprise de "type
mismatch" dans certaine circonstance..
'***
If nodX.Text = "ALIMENTAIRE" Then
'***

cela ne développe pas les autres noeuds, mais ne les
bloque pas. Je ne trouve pas le code qui me permet de les
bloquer



Je crois que le plus simple et le plus clair pour l'utilisateur serait de
vidé le treeview et de le remplir sans les noeuds en question...
Si non tu peux toujours tenté de subclasser certains messages (voir exemple)
pour prévenir la sélection. Toutefois la couleur du texte des noeuds restera
noir, ce qui n'indique pas à l'utilisateur de façon clair qu'il n'a pas
accès à ceux-ci, tu devrais donc, en plus, boucler les noeuds non valide et
modifier leur ForeColor.

Cherche pour (3 ieme exemples) :
TVEventCancel: Demonstrates how to prevent a Node selection change, expand,
and collapse in the Comctl32.ocx TreeView control
http://www.mvps.org/btmtz/treeview/

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/
Avatar
JCM
Salut Zoury

et merci pour toutes tes réponse et ta patience

Cordialement
Jean-claude
-----Message d'origine-----
If nodX = "ALIMENTAIRE" Then



Je te conseilles de toujours préciser la propriété à


laquelle tu accèdes, ça
rend le code plus clair et plus de t'éviter de mauvaise


surprise de "type
mismatch" dans certaine circonstance..
'***
If nodX.Text = "ALIMENTAIRE" Then
'***

cela ne développe pas les autres noeuds, mais ne les
bloque pas. Je ne trouve pas le code qui me permet de




les
bloquer



Je crois que le plus simple et le plus clair pour


l'utilisateur serait de
vidé le treeview et de le remplir sans les noeuds en


question...
Si non tu peux toujours tenté de subclasser certains


messages (voir exemple)
pour prévenir la sélection. Toutefois la couleur du texte


des noeuds restera
noir, ce qui n'indique pas à l'utilisateur de façon clair


qu'il n'a pas
accès à ceux-ci, tu devrais donc, en plus, boucler les


noeuds non valide et
modifier leur ForeColor.

Cherche pour (3 ieme exemples) :
TVEventCancel: Demonstrates how to prevent a Node


selection change, expand,
and collapse in the Comctl32.ocx TreeView control
http://www.mvps.org/btmtz/treeview/

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 -


http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml -


http://www.mztools.com/


.



1 2