Convertir StringGrid (crée par code) vers une image [Résolu]

Messages postés
137
Date d'inscription
dimanche 7 juillet 2002
Statut
Membre
Dernière intervention
11 janvier 2009
- - Dernière réponse : cs_cantador
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
- 12 juin 2006 à 22:10
Bonjour,

J'aimerais copier un composant StringGrid dans une image sans qu'il soit préalablement affiché sur le Form. En bref, je crée par code le composant StringGrid sans qu'il soit affiché, je le remplit et après cela j'aimerais le récupérer sous forme d'image.

Quelqu'un à t'il une idée ?

Merci

Orélien.
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
9
3
Merci
Salut,
Essaye une astuce, certe pas très propre, mais fonctionnelle :

Crées une form sans bordure en dehors de l'écran, ayant la même taille que ton StringGrid.
Place-y par code le StringGrid dans tout l'espace disponible ;
Update l'affichage (Form.Update) ;
Et enfin récupère l'image de la form par Form.GetFormImage;

Normalement, ça devrait marcher, même si ce n'est, comme je le dis une fois encore, pas très "propre"... Si quelqu'un d'autre a une solution plus correcte ...?

@+
Nico {www.ni69.info}

<hr size="2" width="100%" />
N'oubliez pas de cliquer sur Réponse Acceptée lorsque la réponse vous convient !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 116 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ni69
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
9
0
Merci
Regarde ça, ça devrait t'intéresser
http://alphomega.developpez.com/imprimer/?page=page_3

@+
Nico {www.ni69.info}

<hr size="2" width="100%" />
N'oubliez pas de cliquer sur Réponse Acceptée lorsque la réponse vous convient !
Commenter la réponse de ni69
Messages postés
137
Date d'inscription
dimanche 7 juillet 2002
Statut
Membre
Dernière intervention
11 janvier 2009
0
Merci
Merci de ta réponse, mais je crois ne pas avoir trouvé ma solution. J'ai déjà la solution pour copier une certaine partie d'un composant affich et visible à l'écran (GetDC) mais lorsque le composnt est masqué ou crée dynamiquement par code cela ne fonctionne plus et c'est justement dans ce cas précis que j'ai besoin d'une solution.

Peut-être ai-je mal lu les infos que tu m'a donné par lien.

Merci.

Orélien.
Commenter la réponse de cs_orelien
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
15
0
Merci
{$R *.res}


begin
  Application.Initialize;
  Application.ShowMainForm := False;

cantador
Commenter la réponse de cs_cantador
Messages postés
1529
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
9
0
Merci
cantador : pourquoi cacher la form principale de l'application ? 
Il faudrait que seule la form contenant le StringGrid soit invsible...  Et de plus je ne suis pas sûr que GetFormImage marche quand la form n'est pas affichée (visible := false), mais ça reste à voir !

@+
Nico {www.ni69.info}

<hr size="2" width="100%" />
N'oubliez pas de cliquer sur Réponse Acceptée lorsque la réponse vous convient !
Commenter la réponse de ni69
Messages postés
4996
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
15
0
Merci
c'était pour répondre à :
"Crées une form sans bordure en dehors de l'écran"
mais c'est vrai que GetFormImage ???
honnêtement je n'ai pas testé..
Commenter la réponse de cs_cantador

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.