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 :

ajout d'un bouton dans une cellule [WD11]


Sujet :

WinDev

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 63
    Points : 32
    Points
    32
    Par défaut ajout d'un bouton dans une cellule
    Bonjour,

    Etant tout nouveau en programmation windev et devant travailler sur un projet conséquent je rencontre de nombreuses difficultées concernant la mise en place de différente fonctionnalitées.

    Je travaille sur une table fichier avec une base de donnée oracle comportant 20 colonnes et + de 40 000 lignes, je souhaiterais créer une colonne où chaque cellule contiendrait un bouton permettant douvrir une fiche de detail au clic.

    Cependant lorsque j'insére une nouvelle colonne depuis la description de la table il m'est impossible d'afficher la moindre informations dans cette colonne par programmation ( rien ne s'affiche)

    j'ai donc entendu dire qu'il fallait créer une table mémoire en + de la table fichier et de lier cette derniere à la table fichier afin d'avoir le même nombre de ligne mais je ne vois pas trop comment procéder.

    si qqn pouvait me fournir de plus ample précisions je lui en serait reconnaissant

  2. #2
    Membre expérimenté Avatar de klbsjpolp
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1 065
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 065
    Points : 1 322
    Points
    1 322
    Par défaut
    Bonjour,

    Le problème avec les tables fichier, c'est qu'elles sont remplies par un fichier, tu ne peux pas les remplis avec des données par programmation en plus.

    Le seul moyen c'est de le faire dans le traitement "Affichage d'une ligne", mais là ton traitement va être effectué souvent, il ne faut donc pas qu'il soit long.

    Le moyen habituellement utiliser pour faire ce que tu veux c'est d'utiliser des champs à l'extérieur de la table et qui sont remplis à la sélection d'une ligne.

    Je ne comprend pas pourquoi tu veux créer 2 tables, mais dans une table mémoire tu peux effectivement mettre ce que tu veux. Le problème c'est que tu perds les avantages de la table fichier, surtout au niveau de l'optimisation pour 40000 lignes, ça peut être très pénalisant.
    «Un problème bien défini est un problème à moitié résolu.»

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 63
    Points : 32
    Points
    32
    Par défaut
    le problème est que justement je ne souhaite pas remplir ces champs à la séléction de la ligne mais dés l'affichage de la table pour permettre à l'utilisateur d'ouvrir la fiche de detail directement en cliquant sur le bouton.

    Sinon en utilisant le rad un bouton général modifier a été directement créer permetant d'ouvrir la fiche de detail en selectionnant la ligne puis en cliquant sur le bouton.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 63
    Points : 32
    Points
    32
    Par défaut
    J'ai trouvé une solution que je vais vous décrire ci-dessous pour ceux que cela pourraient éventuelement intérésser.

    Dans un 1er temps j'ai remplacé la table par une table basée sur une requête. J'ajoute une colonne depuis la description de la table ( dans mon cas col_modif)

    Puis j'importe mon image à l'aide d'un champ image placé dans un coin de la fenêtre que je rend invisble par la suite, dans la description de l'image je récupére la "fin" du chemin d'accés.

    Ensuite il suffit de se rendre dans le code de la table, et plus particuliérement dans la ligne Affichage d'une ligne de " Votre table", d'ajouter la ligne suivante ( votretable.votrecolonne="chemin de l'image"):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Table.COL_modif="VST12426-16-5.png"
    Ensuite il faut se rendre dans le code de votre colonne ( clic sur colonne) crée précédemment et ajouter ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ExécuteTraitement(Table,trtSélection)
    ExécuteTraitement(BTN_Modifier,trtClic)
    ces 2 lignes permettent d'appeler au clic sur l'image, l'action effectuée par le bouton modifier qui a été crée depuis le RAD.

    Voila, en esperant que cela puisse servir à qqn ultérieurement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Inserer un bouton dans UNE cellule d'un JTable
    Par Su dans le forum Composants
    Réponses: 9
    Dernier message: 22/07/2009, 13h59
  2. Ajout d'un bouton dans une feuille excel avec vba
    Par nsqualli dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/11/2008, 15h35
  3. [JTable] ajout d'un bouton dans une colonne
    Par Blast dans le forum Composants
    Réponses: 7
    Dernier message: 15/03/2007, 17h33
  4. JTable : comment insérer un bouton dans une cellule ?
    Par donyas dans le forum Composants
    Réponses: 2
    Dernier message: 08/08/2006, 15h54
  5. Mettre un bouton dans une cellule !!!!
    Par mehdi82 dans le forum Composants
    Réponses: 2
    Dernier message: 22/11/2005, 09h51

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