|
| Iniciado por Monsieur Serge, 11,ene. 2019 06:35 - 2 respuestas |
| |
| | | |
|
| |
Miembro registrado 213 mensajes |
|
| Publicado el 11,enero 2019 - 06:35 |
Salutations,
Une question toute simple...
J'ai un champ table dans lequel j'affiche une liste de données et une image. Style TableAjoute(NomTable, MonFichier.Info1 + Tab + MonFichier.Info2 + Tab + MonFichier.RubriqueImage)
Si je sauvegarde mon image de la façon suivante tout va bien: MonFichier.RubriqueImage = Chemin\NomImage.Format
Mais mon image doit se trouver sur le disque à son emplacement d'origine sinon Pouf! plus d'image. Déception...
Je fouille et je me tourne vers HAttacheMémo. Style HAttacheMémo(MonFichier, RubriqueImage, "Chemin\NomImage.Format", hMémoImg) Suivi d'un HAjoute ou HModifie naturellement.
Mais MonFichier.RubriqueImage ne passe plus dans mon TableAjoute.
Ma question: Doit-on absolument "HExtraitMémo" l'image sur disque pour pouvoir l'utiliser? Ne peut-on assigner l'image directement à la table depuis le mémo?
J'ai fouillé... Manifestement sans succès.
Merci d'avance pour toute réponse.
Serge |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 213 mensajes |
|
| Publicado el 14,enero 2019 - 21:33 |
Après avoir laissé le problème de côté quelques jours je me réponds. Un autre développeur qui bute sur le problème pourra toujours lire.
1) Description de fichier / rubrique Pour ma "RubriqueImage" j'ai activé les vignettes. Vignette de 32x32 pour le besoin de l'exemple.
2) Ajout de l'image dans "MonFichier" ... MonFichier.RubriqueX = ValeurX MonFichier.RubriqueY = ValeurY HAttacheMémo (MonFichier, RubriqueImage, "Chemin\NomImage.Format", hMémoImg) ... HAjoute ou HModifie naturellement.
3) Assigner la vignette de l'image à "MaTable" ... HLitPremier (MonFichier, RubriqueX, HBlocageNon) TANTQUE HTrouve(MonFichier) ... TableAjoute("MaTable", MonFichier.RubriqueX + Tab + MonFichier.RubriqueY) MaTable.RubriqueImage[MaTable..Occurence] = MonFichier.RubriqueImage..Vignette[1] // <---------- La magie est ici. ... HLitSuivant (MonFichier, RubriqueX, HBlocageNon) FIN ...
----- Dans cet exemple "MaTable" a 3 colonnes Colonne 1 pour ValeurX Colonne 2 pour ValeurY Colonne 3 pour la vignette de mon image (Colonne de type Image)
----- Idem pour assigner l'image elle-même à un champ image. MonChampImageGrandFormat = MonFichier.RubriqueImage MonChampImagePetitFormat = MonFichier.RubriqueImage..Vignette[1]
----- Vignette[Indice] prend autant d'indice que de vignettes sur votre image (Description de fichier). Testé de mon côté avec 4 vignettes de différentes tailles.
----- Pas besoin de HExtraitMémo et l'image n'a pas à être sur le disque. Merveilleux!
Si vous avez plus simple à suggérer je suis preneur.
Serge
Bon Windev!Mensaje modificado, 14,enero 2019 - 21:46 |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 213 mensajes |
|
| Publicado el 16,enero 2019 - 17:39 |
Un constat pour un lecteur éventuel...
Windev ne gère pas les vignettes de façon efficace.
Du moins depuis une image de 512x512 pour de petites vignettes de 16x16 ou 32x32. Sur 250 images je me retrouve avec quelques vignettes tout simplement illisibles. Une seule vignette illisible c'est trop...
Comme il s'agit d'images fixes dans le temps j'en suis venu à stocker celles-ci selon les dimensions requises. Par exemple une même image en 16x16, 32x32, 64x64, 128x128, 256x256, 512x512 et 1024x1024.
Jusqu'à 256x256 je demande une vignette de taille équivalente par image. Par exemple mon image en 32x32 a sa vignette en 32x32.
Maintenant je peux utiliser images et vignettes sans aucune difficulté. Résultats impeccables sur champ table ou champ arbre.
Je biffe ce problème de ma liste et poursuit mon développement.
Serge
Bon WinDev! |
| |
| |
| | | |
|
| | | | |
| | |
|