French [RESOLU] CLVTree - Tree View

sultan87

Active Member
Licensed User
Longtime User
Bonsoir
j'ai repris un projet existant sur le web pour créer un menu
je désire mettre en tète un titre en fonction de l'endroit où je suis dans le menu
j'ai vu dans item que je pouvais suivre les parents jusqu'à ce qu'il soit null
mais je sais pas comment faire en code
il y a peut être quelqu'un pou m'aider
ci joint mon projet
Cordialement
Pierre
 

Attachments

  • CLVTree.zip
    16.2 KB · Views: 172

sultan87

Active Member
Licensed User
Longtime User
Bonsoir
je n'ai pas précisé, je voudrai par exemple avoir
Limoges - Studio - Températures
ou
Limoges - 1er étage - Paramètres
Cordialement
Pierre
 

klaus

Expert
Licensed User
Longtime User
C'est un projet B4XPages ou un projet B4A !?
J'ai voulu essayer ton projet, mais j'obtiens ceci dans les Logs !?
Unknown type: b4xmainpage
Are you missing a library reference?

Désolé de devoir demander, mais comment espères-tu de l'aide avec un projet qui ne fonctionne pas !?
 

sultan87

Active Member
Licensed User
Longtime User
Bonsoir Klaus
toutes mes excuses
ci-joint le fichier B4XMainPage.bas
Pierre
 

Attachments

  • B4XMainPage.bas
    3.5 KB · Views: 170

Serge Bertet

Active Member
Licensed User
Il manque les fichiers image : "bellac blason.jpg", "paramètres.jpg", "limoges blason.jpg" et peut-être d'autres ?

Pour rechercher un objet = Null :
B4X:
    Do While monObjet.Parent.As(monType).IsInitialized
        monObjet = monObjet.Parent
    Loop
    ' ici monObjet.Parent = Null

Personnellement je ne connais pas CLVTree donc monObjet peut être un CLV.Item et monType peut être un CLVTree, aucune idée.

Essayes de mettre un projet complet avec une esquisse de ce que tu veux faire.
 

sultan87

Active Member
Licensed User
Longtime User
Bonsoir à tous
je pense avoir trouver une solution
c-joint le projet complet, je l'espère
Pierre
 

Attachments

  • CLVTree.zip
    90.5 KB · Views: 163

klaus

Expert
Licensed User
Longtime User
Pour zipper des projets B4XPages il est préférable d'utiliser la ligne no 6 avec la touch Ctrl enfoncée.
De cette manière tous les fichiers nécessaires sont zippés.

1672771119911.png


Je conseille de la modifier en ceci:
B4X:
'Ctrl + click to export as zip: ide://run?File=%B4X%\Zipper.jar&Args=\%PROJECT_NAME%.zip
Remplacer Args=Project.zip par Args=\%PROJECT_NAME%.zip.
PROJECT_NAME est un mot réservé qui met le nom du projet à sa place.
 

sultan87

Active Member
Licensed User
Longtime User
Bonsoir Klaus
merci pour la réponse
j'ai bien modifié la ligne 6
si je comprends bien je fais Ctrl et Exporter en zip du menu Fichier
ce que je ne comprends pas c'est comment il prend en compte la ligne 6
Pierre
 

sultan87

Active Member
Licensed User
Longtime User
OK
merci
le fichier zip créé fait 3674ko
impossible à attacher, trop gros
comment faire
Bonne nuit
Pierre
 

Serge Bertet

Active Member
Licensed User
À vérifier que dans le zip il n'y ait pas le dossier 'AutoBackups' qui prend de la place pour rien.
Sinon c'est bon, a priori tu as réussi à faire ce que tu voulais pour le titre ?
 
Last edited:

klaus

Expert
Licensed User
Longtime User
le fichier zip créé fait 3674ko
C'est étrange.
En zippant avec la ligne décrite ci-dessus, les dossiers AutoBackup et les dossiers Objects pour les trois plateformes ne sont pas dans le fichier zip.
Est-ce que tu as de gros fichiers d'images dans dans le dossier Shared Files ?
Mais le fichier zip est évidemment plus gros que si on zippe que le projet B4A, puisqu'il contient les fichiers pour les trois plateformes.
Le problème est que si on zippe le projet que pour B4A, dans l'éditeur, le dossier Shared Files n'est pas inclus et le projet plante sur cette ligne:
#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files"
Qu'il faut alors commenter.
 

sultan87

Active Member
Licensed User
Longtime User
Bonjour
je vous joins le projet que je vais affiner pour ajouter une webview en fonction du choix fait dans le menu
Pierre
 

Attachments

  • CLVTree.zip
    110.3 KB · Views: 174

Serge Bertet

Active Member
Licensed User
Le problème vient je pense de la façon dont ton arbre est déclaré.
En faisant comme ça j'obtiens dans le titre la position dans l'arbre à savoir : "Limoges - Studio - Paramètres - Températures - 1er étage"
Je ne sais pas si c'est que tu veux.

B4X:
    parametres = xui.LoadBitmap(File.DirAssets, "parametres.jpg")
    logo = xui.LoadBitmap(File.DirAssets, "bellac blason.jpg")

    Tree.Initialize(CustomListView1)

    Dim item As CLVTreeItem
    item = Tree.AddItem(Tree.Root, "Bellac", logo, "1")
    item = Tree.AddItem(item, "Paramètres", parametres, "1-1")
    item = Tree.AddItem(item, "Températures", Null, "1-2")

    logo = xui.LoadBitmap(File.DirAssets, "limoges blason.jpg")
    item = Tree.AddItem(Tree.Root, "Limoges", logo, "2")
    item = Tree.AddItem(item, "Studio", Null, "2-1")
    item = Tree.AddItem(item, "Paramètres", parametres, "2-1-1")
    item = Tree.AddItem(item, "Températures", Null, "2-1-2")
    item = Tree.AddItem(item, "1er étage", Null, "2-2")
 

klaus

Expert
Licensed User
Longtime User
Serge, je crains que le code que tu proposes ne correspond pas à ce que sultan87 souhaite.
D'après ce que j'ai vu et compris, il a trouvé la solution.
On voit la structure désirée dans le dernier paramètre: "2", "2-1", "2-1-1".
Et lorsqu'on presse sur une entrée l'arbre 'généalogique' est affiché.
 

Serge Bertet

Active Member
Licensed User
Tu va dans ton premier post et tu changes le titre en :

[RESOLU] CLVTree - Tree View​

 
Top