treeview
Anonyme
'jour messieurs !

Comment faire pour que j'ai une couleur différente par "etage" dans mon arbre ?

+etage1couleur1
+etage2couleur2
+etage1couleur1
+etage2couleur2
+etage3couleur3

si quelqu'un sait .. merci (arbre..couleur change tte les couleur)

Contribution le : 23/03/2006 09:54
Créer un fichier PDF de la contribution Imprimer


Re: treeview
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonjour,

Voici une technique qui permet de coloriser chaque elements d'un arbre

ArbreAjoute(Arbre1,"Menu1",aDéfaut,aDéfaut,"1")
ArbreAjoute(Arbre1,"Menu1" + TAB + "SousMenu11",aDéfaut,aDéfaut,"11")
ArbreAjoute(Arbre1,"Menu1" + TAB + "SousMenu12",aDéfaut,aDéfaut,"12")
ArbreAjoute(Arbre1,"Menu2",aDéfaut,aDéfaut,"2")
//Ici on change les couleur du texte des libellés
Arbre1["Menu1" + TAB + "SousMenu11"]..Couleur = iVertFoncé
Arbre1["Menu1" + TAB + "SousMenu12"]..Couleur = iRougeFoncé

Contribution le : 23/03/2006 11:47
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer


Re: treeview
Utilisateur WDF
Inscrit:
24/10/2005 15:13
Post(s): 81
oui sauf que moi sous menu je les connais pas d'avance ...

Contribution le : 23/03/2006 14:57
Créer un fichier PDF de la contribution Imprimer


Re: treeview
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonjour,

et bien c'est encore plus simple :
Arbre1["Menu1"]..Couleur = iVertFoncé
Arbre1["Menu2"]..Couleur = iRougeFoncé

Contribution le : 23/03/2006 15:52
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer


Re: treeview
Utilisateur WDF
Inscrit:
24/10/2005 15:13
Post(s): 81
Merci !
Bon c'était pas tout a fait ms cela m'a bien aidé !
pour info voila le bout de code :

POUR j = 1 A i
Ch_sql2 = " SELECT date_plan"
Ch_sql2 +=" FROM PLANNING "
ch_sql2 +=" WHERE collaborateur_plan = '"+r[j]+"' "
SI SQLExec(Ch_sql2,"R2") = Vrai ALORS
SQLPremier("R2")//premiere ligne
TANTQUE PAS SQL.EnDehors
Arbre1[r[j] + TAB +DateVersChaîne(SQLCol"R2",1))]..Couleur = iVertFoncé
SQLSuivant("R2")
FIN
FIN
FIN

Contribution le : 23/03/2006 18:08
Créer un fichier PDF de la contribution Imprimer


Re: treeview
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonsoir,

Sauf erreur de ma part votre code nécessite un poil d'optimisation

Vous faîtes carrément une requête par collaborateur_plan
-Ressources reseau utilisée inutilement
-Temp d'execution de la procédure ralenti bêtement

Créer plutôt une requête qui va vous retourner tous les enregistrements voulues.
i est un entier
j est un entier
sListe est une chaine
Rs est une source de données

//On créer la liste des collaborateurs
POUR j = 1 A i 
 Si sListe <> "" alors sListe += ","
 sLite += "'" + r[j] + "'"
Fin

Ch_sql2 = " SELECT date_plan"
Ch_sql2 +=" FROM PLANNING "
ch_sql2 +=" WHERE collaborateur_plan IN (" + sListe + ")"

//on recupere en une seule fois le résultat
Si pas HExecuteRequeteSQL(Rs,HRequeteDefaut,Ch_sql2) Alors
 Erreur(HErreurInfo())
 Retour
Fin

//on parcours en memoire tous les enregistrements
Pour tous RS
  Arbre1[R2.collaborateur_plan + TAB +DateVersChaîne(SQLCol"R2",1))]..Couleur = iVertFoncé
Fin

Contribution le : 23/03/2006 18:53
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer


Re: treeview
Utilisateur WDF
Inscrit:
24/10/2005 15:13
Post(s): 81
j'ai essayé de remplacer mon code par celui que vous m'avez suggéré mais il coince niveau de la liste ...
possible que je n'ai pas tout saisi mais j'ai plusieur éléments a récupéré par collaborateur (plusieur date), est ce qu'avec celui suggéré cela va fonctionné ?
je pense que oui mais j'attend confirmation, si oui j'essairai d'amélioré...
merci des réponses, ca fait bien avancé !

Contribution le : 24/03/2006 09:20
Créer un fichier PDF de la contribution Imprimer


Re: treeview
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonjour,

Le principe de montage de la requete :
Si j'ai bien compris les collaborateurs sont stockés dans un tableau 'r' et il y a 'i' collaborateurs.

l'idée étant de créer la liste des collaborateurs sous la forme :
('Collabo1','Collabo2',etc...)
et ensuite de créer la requête qui va extraire toutes les lignes du planning pour tous les collaborateurs existants dans la liste.

Voilà le type de requête qui devrait être contenu dans Ch_sql2:
" SELECT date_plan FROM PLANNING WHERE collaborateur_plan IN
('Collabo1','Collabo2','Collabo3',etc)"

Dans le cas ou r[j] contient des valeurs de type chaine
sinon la requête devra être du type:
" SELECT date_plan FROM PLANNING WHERE collaborateur_plan IN
(25,32,17,etc)"

pour des valeurs de type numérique.

Contribution le : 24/03/2006 11:34
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2