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

WinDev Discussion :

[Windev 25] Transfert d'informations entre application et fenêtre interne d'un Tableau de bord


Sujet :

WinDev

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2009
    Messages : 177
    Par défaut [Windev 25] Transfert d'informations entre application et fenêtre interne d'un Tableau de bord
    Bonjour à tous,

    Je ne m'en sors pas ici
    Je crée un logiciel scolaire de gestion de pensums et je chercher à afficher tous les cours données dans une certaine matière. J'utilise pour cela un champ tableau de bord et je crée une fenêtre interne par cours.

    Un cours est en fait une enveloppe et à l'intérieur se trouve le ou les enseignements.
    Par exemple, un cours d'allemand en discipline fondamentale (nom de l'enveloppe) est constitué d'une leçon hebdomadaire d'allemand 'standard' et deux leçons d'allemand en laboratoire.

    Dans ma fenêtre interne, j'ai un champ zone répétée
    Dans le cas de mon cours d'allemand, la zone répété ma fenêtre interne aura donc 2 enregistrements

    Ce que j'aimerais faire maintenant est adapter la taille de ma fenêtre interne en fonction du nombre d'enregistrements qu'elle contient.

    J'ai déjà ce traitement au sein de ma fenêtre interne qui fonctionne (adapter la taille de ma zone répétée)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // compter les occurrences d'enseignements
    TableauOccurrence(MonBloc.ListeEnseignements)
    ZR_ListeEnseignements.Hauteur = TableauOccurrence(MonBloc.ListeEnseignements)*50
    Mais a priori, je ne peux adapter la taille de ma fenêtre interne seulement depuis l'extérieur de cette dernière.

    Je ne sais donc pas comment je peux transférer des informations entre mon programme principal et mes fenêtres internes.


    Nom : 2025-04-28_10-15-07.jpg
Affichages : 166
Taille : 47,3 Ko

    J'ai essayé les syntaxes suivantes mais sans succès :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    		IndiceWidget est un entier = TDBAjouteWidget(TDB_DetailCoursEffectifs, FI_WidgetCoursEnseignements, MonParam.NomCours, MonParam.Bloc)
     
     
     
    //		//TDB_DetailCoursEffectifs[IndiceWidget].ChangeTailleWidget(
    //		/ Appeler directement sans passer par une variable
    //		NouvelleHauteur est un entier = TDBInfoWidget(TDB_DetailCoursEffectifs, IndiceWidget, tiFenetreInterne).RecalculeHauteur()
    //
     
    //
    //		TDBChangeTailleWidget(TDB_DetailCoursEffectifs, IndiceWidget, -1, FI_WidgetCoursEnseignements.AdaptationTaille())
    //              TDBChangeTailleWidget()
    //              FenTailleUtile(IndiceWidget, 30, 30)
     
    		TDB_DetailCoursEffectifs[IndiceWidget].Visible	= Vrai
    		TDB_DetailCoursEffectifs[IndiceWidget].Valeur	= MonParam.IndiceLocal
     
     
    //              FI_WidgetCoursEnseignements.AdaptationTaille()
    //		MaTaille est un entier = TDB_DetailCoursEffectifs[IndiceWidget].sai_taille
    //		TDB_DetailCoursEffectifs[IndiceWidget].
    //		MonFI est une variable automatique
    //		MonFI = FenêtreInterneAssociee(TDB_DetailCoursEffectifs[IndiceWidget])
    //             FenAdapteTaille(TDB_DetailCoursEffectifs[IndiceWidget])

    Je suis preneur de toute idée
    D'avance, merci à tous et excellente suite de journée

    Arnaud

  2. #2
    Expert confirmé
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 563
    Par défaut
    Bonjour,

    Je suis peut-être complètement en dehors de la plaque mais je me jette à l'eau. A la fin de ton traitement d'affichage de la fenêtre principale (ou d'un bouton), le contenu des fenêtres internes est chargé. Je ferais un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // Code de chargement du contenu de la FI1
    // Code de chargement du contenu de la FI2
    // etc...
    Champ_FI_Enseignant..Hauteur= FI1.ZR_ListeEnseignements..Hauteur
    Champ_FI_Matière..Hauteur= FI1.ZR_Matière..Hauteur

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2009
    Messages : 177
    Par défaut
    Je pense y être arrivé à l'aide des instructions suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //
    MaFI est un Champ <- TDB_DetailCoursEffectifs[IndiceWidget]
     
    Trace(MaFI.sai_TAILLE)
    Trace(MaFI.Libellé)
    Trace(MaFI.LIB_NomCours)
     
    mataille est un entier =  MaFI.SAI_TAILLE
    TDBChangeTailleWidget(TDB_DetailCoursEffectifs, IndiceWidget,310 ,mataille,tdbUnitéPixel)
    TDBAffiche(TDB_DetailCoursEffectifs,IndiceWidget)
    Mais je me bats encore pour la taille exacte du widget car il y a beaucoup d'infos de taille

    - Taille de la FI
    - Taille du tableau de bord
    - Taille des cellules du tableau de bord
    - Marges verticales et horizontales du tableau de bord

    - Taille de base de la zone répétée
    - Hauteur de ligne ...

    Merci
    -

  4. #4
    Expert confirmé
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 563
    Par défaut
    Et TDB_DetailCoursEffectifs[IndiceWidget]..hauteur = HauteurQuivaBien, ça ne fonctionne pas ?

    Dsl, j'était parti sur les champs FI et le fenêtres internes qui vont avec.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2009
    Messages : 177
    Par défaut
    Merci quand même sympa d'avoir pris le temps ...

    Pare contre je rencontre le problème suivant et l'aide de Winde ne m'a pas beaucoup .... aidé ici :

    J'aficher donc des cours et des enseignements au sein de ces derniers.

    Le responsable des pensums peut fusionner deux enseignants de deux cours différents pour n'en faire qu'un (si par exemple le nombre d'étudiant donc chaque cours est petit)

    Je souhaitais donc mettre en place un système drag & drop que je trouvais sympa..

    J'ai fait plusieurs tentatives de dndprogrammé (MonObjet.DndSource = dndProgrammé ; MonObjet.DndCible = dndProgrammé) sur :
    - ma fenêtre interne,
    - ma zone répétée
    - La liste de classe au sein d'une zone répétée (carré rose-violet)

    Nom : 2025-04-28_21-22-29.jpg
Affichages : 132
Taille : 141,9 Ko

    J'arrive bien a attraper le début du glisser mais impossible d'activer le lâcher... le survol par contre fonctionne
    J'ai essayé d'autres destination en dehors de mon champ tableau de bord mais rien n'y fait ; le survol fonctionne mais le lâcher semble interdit.

    Y-aurait-il une grosse limitation de ce procédé pour les fenêtres internes dans un champ tableau de bord ?
    Je n'ai rien trouvé dans la doc ...
    Merci à tous
    Arnaud

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2023
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2023
    Messages : 105
    Par défaut
    Bonjour,

    avez-vous programmé le DNDAccepte ?

    la réponse est peut-être sur cette vidéo :


    Cdlt

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2009
    Messages : 177
    Par défaut
    Bonsoir DevOcc

    Merci pour la question ; oui je l'avais programmé mais dans le code principal de ma fenêtre interne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    PROCÉDURE MaFenêtre(MonBloc est un  STBlocCours)
    FI_WidgetCoursEnseignements.DndCible = dndProgrammé
     
    DnDEvénement(LacherEnseignement, FI_WidgetCoursEnseignements, dndLâcher)
     
    ...
     
    PROCÉDURE LacherEnseignement()
     
    DnDAccepte(dndCopier)
    Trace ("Lacher i")

    Chose qui se passe également : lorsque je débute le glisser, tous les éléments que j'avais programmé pour un dndlâcher s'affichent avec le symbole :

    Nom : OIP.jpeg
Affichages : 126
Taille : 4,6 Ko

    Merci


    PS. Bravo pour vos vidéos qui m'ont déjà bien aidé

Discussions similaires

  1. Transfert d'information entre fenetres
    Par cyberkamikaz dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 08/12/2012, 23h23
  2. Réponses: 0
    Dernier message: 08/04/2011, 22h12
  3. Transfert de donnée entre WP7 et application PC
    Par jerem3000 dans le forum Windows Phone
    Réponses: 19
    Dernier message: 07/03/2011, 18h40
  4. Transfert de structure entre 2 applications
    Par OttisToole dans le forum Threads & Processus
    Réponses: 12
    Dernier message: 04/08/2009, 23h15
  5. transfert d'information entre des fichiers
    Par Amallric dans le forum Langage
    Réponses: 10
    Dernier message: 21/09/2006, 08h50

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