FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV 2024
→
Table et Fenêtre Interne
Table et Fenêtre Interne
Débuté par Cyril, 23 mai 2018 09:36 - 1 réponse
Connectez-vous…
Cyril
#1
Posté le 23 mai 2018 - 09:36
Bonjour à tous,
Je cherche, en vain, à faire en sorte que dans une table avec fenêtre interne de détail d'une ligne, si pour un enregistrement "parent" je n'ai pas de "fils" alors la fenêtre interne, lorsque je clique sur le [+], ne s'affiche pas.
Si l'un d'entre vous à une solution je suis preneur.
D'avance merci, ....
Signaler
0
0
Christophe PRADEL
#2
Membre enregistré
136 messages
Popularité : +12 (14 votes)
Posté le 24 mai 2018 - 10:06
Bonjour Cyril,
J'ai peut être une solution à ton problème :
Il faut définir la fenêtre interne de détail ligne non pas en dur, mais par programmation
Dans mon cas de test, j'ai une table mémoire remplie par une variable tableau d'objets :
Ma classe :
MaClasseHierarchique
est une
C
lasse
m_s
Texte
est une chaîne
Items
est un tableau de
MaClasseHierarchique
FIN
Code d'initialisation de la fenêtre principale :
Procedure MaFenêtre
(
)
gcl
MaClasseHierarchique
est un
MaClasseHierarchique dynamique
gcl
Obj
est un
MaClasseHierarchique dynamique
gcl
Obj2
est un
MaClasseHierarchique dynamique
gtab
Objets
est un tableau de
MaClasseHierarchique
POUR j
=
1
À
3
gcl
MaClasseHierarchique
=
allouer un
MaClasseHierarchique
gcl
MaClasseHierarchique.m_sTexte
=
"Objet"
+
NumériqueVersChaîne
(j)
SI
j
<
>
2
ALORS
POUR i
=
1
À
5
gcl
Obj
=
allouer un
MaClasseHierarchique
gcl
Obj.m_sTexte
=
gcl
MaClasseHierarchique.m_sTexte
+
" Item"
+
NumériqueVersChaîne
(i)
SI
i
<
>
3
ALORS
POUR k
=
1
À
4
gcl
Obj2
=
allouer un
MaClasseHierarchique
gcl
Obj2.m_sTexte
=
gcl
Obj.m_sTexte
+
" Sous-Item"
+
NumériqueVersChaîne
(k)
gcl
Obj.Items.Ajoute
(
gcl
Obj2
)
FIN
FIN
gcl
MaClasseHierarchique.Items.Ajoute
(
gcl
Obj
)
FIN
FIN
gtab
Objets.Ajoute
(
gcl
MaClasseHierarchique
)
FIN
InitHasard
(
)
Le test d'opportunité d'afficher la fenetre interne se fait dans l'évènement "affichage d'une ligne" de la Table :
cl
Obj
est un
MaClasseHierarchique
=
TABLE_
GtabObjets
n
Index
est un entier
=
IndiceEnCours
(
)
SI
cl
Obj.Items
..
Vide
ALORS
TABLE_
GtabObjets
[
n
Index
]
..
FenêtreDétailLigne
=
""
SINON
TABLE_
GtabObjets
[
n
Index
]
..
FenêtreDétailLigne
=
"FI_TestListe"
FIN
Le résultat : Le "+" permettant l'accès à le fenetre détail n'apparait que sur les lignes liées à un objet contenant des Items :
Voilà, j'espère que cela t'aidera
PS : comme je travaille en ce moment sur les fenetres interne détail de ligne de table, je vais poster dans l'heure sur le forum pour un problème que je n'arrive à résoudre : comment, depuis le fenêtre principale accéder aux champs et procédures de chaque fenêtre interne des ligne déroulées
si tu peux y jeter un oeil...
Chris
Signaler
0
0
→ Revenir à WINDEV 2024
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Hors-sujet
Outils
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte