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

Langage Delphi Discussion :

Utilisation d'un StringGrid dans unThread


Sujet :

Langage Delphi

  1. #1
    Membre expérimenté
    Homme Profil pro
    Ingenieur de recherche - Ecologue
    Inscrit en
    Juin 2003
    Messages
    1 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingenieur de recherche - Ecologue

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 146
    Points : 1 412
    Points
    1 412
    Par défaut Utilisation d'un StringGrid dans unThread
    Bonjour a tous


    J'utilise un composant StringGrid (provenant de TMS software) dans un thread.

    La grille est utilisee comme un element de stockage de donnees (plus dizaines de colonnes et jusqu'a pls milliers de lignes)
    Les donnees de la grille sont fournies par une base de donnees (Pas de pb). Ces donnees recoivent un formatage (police, couleur, etc), puis exportation en fichier excel (voila pour expliquer le pourquoi)


    Aucune intervention de l'utilisateur n'est demande pendant cette operation, d'ou l'interet du thread

    Mais voila, comme le StringGrid est un composant visuel, mon application est bloque pendant cette operation (et l'interet du thread est perdu )


    Quelqu'un aurait une solution pour avoir le beurre ET l'argent du beurre ?

    a+

    olivier
    Merci d'ajouter un sur les tags qui vous ont aidé

  2. #2
    Membre émérite
    Avatar de skywaukers
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2005
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 216
    Points : 2 303
    Points
    2 303
    Par défaut
    Bonjour,

    tu as essayé de faire un TaGrid.beginupdate avant le remplissage (et un TaGrid.endUpdate à la fin).

    Ceci di je pense que le mieux serait de passer par une structure plus légère qu'une grid pour ce genre de traitement. Après pour excel tu peux utiliser OLE, ou si tu as des licenses chez TMS tu peux utiliser leur composant Flexcel qui est vraiment excellent pour créer/manipuler des tableau excel, sans même avoir besoin d'excel installé.

    @++
    Dany

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingenieur de recherche - Ecologue
    Inscrit en
    Juin 2003
    Messages
    1 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingenieur de recherche - Ecologue

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 146
    Points : 1 412
    Points
    1 412
    Par défaut
    merci


    tu as essayé de faire un TaGrid.beginupdate avant le remplissage (et un TaGrid.endUpdate à la fin).
    Oui, il y a bien les begin et endUpdate.


    Ceci di je pense que le mieux serait de passer par une structure plus légère qu'une grid pour ce genre de traitement
    je suis bien d'accord. mais j'ai plein d'informations en plus de donnees dans une cellule, notamment des indications d'erreurs au travers de couleurs, de formatage de couleurs ou de "comment" de cellules.


    J'ai bien une licence chez TMS mais pas le Flexcel...
    Je ne peux pas utiliser le OLE vers excel; certains de mes collegues ne l'utilisent pas..


    En fait ca marche tres bien, mais lorsque cela se fait dans un thread, mon apli se fige tant que le thread se termine (ce qui n'est pas franchement cool )

    d'autres idees ?

    olivier
    Merci d'ajouter un sur les tags qui vous ont aidé

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 522
    Points : 25 052
    Points
    25 052
    Par défaut
    TMS fourni la lib FlexCell qui est nettement mieux qu'une grille en mémoire pour manipuler des Fichiers Excel

    utilises-tu Synchronize ?
    TAdvStringGrid est-il sur une fenêtre ? Si oui, Risque de OSError 1400
    Si non, risque de manque de stabilité du control !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Membre expérimenté
    Homme Profil pro
    Ingenieur de recherche - Ecologue
    Inscrit en
    Juin 2003
    Messages
    1 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingenieur de recherche - Ecologue

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 146
    Points : 1 412
    Points
    1 412
    Par défaut
    merci

    j'en suis aussi venu a cette conclusion

    je viens d'investir dans flexcell

    a+ et merci

    olivier
    Merci d'ajouter un sur les tags qui vous ont aidé

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

Discussions similaires

  1. [servlet][formulaire] utilisation de 2 servlet dans 1 form
    Par luc_pichot dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 26/05/2004, 17h55
  2. utiliser le même fichier dans plusieurs projets vc++6
    Par yannick_sch dans le forum MFC
    Réponses: 5
    Dernier message: 12/02/2004, 17h39
  3. Sauver une StringGrid dans un fichier
    Par Rodrigue dans le forum C++Builder
    Réponses: 2
    Dernier message: 10/12/2003, 14h52
  4. Utilisation de l'unicode dans un algo de cryptage
    Par Zazeglu dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 28/10/2003, 14h38
  5. Réponses: 2
    Dernier message: 24/06/2003, 20h31

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