Je cherche à créer un plan dynamique de mon entreprise via un userform. Je souhaite mettre en arrière-plan une image schématique de l'entreprise puis j'ajouterais par dessus des boutons de contrôle à des endroits stratégiques afin d'accéder aux liens voulus.
J'ai lu sur plusieurs forums que le format de mesure des userforms était le TWIP. J'ai donc voulu faire des conversions en centimètres afin de connaître le format de sortie de mon image et éviter des pertes de qualité lorsque cette dernière sera dans l'userform. Toutefois, un convertissant des twips en cm je me rends compte que les valeurs en cm sont extrêmement petites.... ce qui réduit grandement le format de mon image en sortie.
Je me permets de me tourner vers le forum pour avoir quelques lumières sur le meilleur moyen d'avoir une image de qualité que je pourrais ajouter en arrière-plan d'un userform tout en respectant l'échelle de l'un et l'autre. Je vous joins mon fichier de conversion au cas où (si mes calculs étaient faux ).
re @Dranreb non ca ne marche pas en affichage ctrl+V sur le userform
et ca fonctionne sur le .picture en VBE par ce que dans cette propriété c'est un bitmap de l'image qui s y trouve même quand tu te sert du dialog de la même manière que quand tu insère une image dans un sheets c'est un bitmap sur le sheet pas l'image
Qu'est ce que tu appelle sur le Userform ? J'ai dit: en cliquant sur la propriété Picture, mais pas sur le bouton de la flèche pour choisir un fichier, mais à sa gauche, puis Ctrl+V. Et je n'ai pas dit à l’exécution non plus. J'aimerais bien pouvoir le faire à l'exécution !
peut Etre avec un object stdpicture ou Ipicture mais j'en doute
le ctrl+V dans picture dans les propriétés en mode édition insert le tableaux de bit du bitmap contenu en mémoire
avec l'api OleCreatePictureIndirect aussi qui créée un conteneur en mémoire j'ai quelque exemple que je m’était amusé a faire il y a quelque années mais le ctrl+V je suis pas sur
en effet la capture par la touche capture par exemple envoie dans le clipboard le tableau de bit du bitmap (les données de la capture ) hors le .picture quand le userform est activé attend un conteneur jpg,gif,tif,bmp ou le .picture d'un autre
Attention quand même :ne pas oublier que le bitmap peux peser très lourds (plusieurs megas )
c'est tout simplement impossible qu'il en soit autrement parce que le .picture(image ou userform ou label,etc... n'accepte pas la semie transparence
hors les formes que tu a capturé sont peut etre dessinées avec GDI drow smouse qui lisse les bords(frontieres (plein/vide)) avec la semie transparence
tu a donc dans le userform ou control le bord des motifs de l'images en dents de scie
@Dranreb je pensais que tu connaissais, c'est ce que je voulais dire en parlant de olecreatepictureindirect qui créée un conteneur en mémoire
et de la même manière que l'on peu sauver une image d'un userform on peut le faire avec le conteneur créé en mémoire
creation avec données
R = OleCreatePictureIndirect(uPicInfo, IID_IDispatch, True, IPic)
enregistrement phisique
savepicture ipic,chemin
attention tout de même cet exemple n'est pas son dernier et il comporte une erreur il ne fonctionne pas en bitmap(pas de transparence )
seul le xlpicture(WMF) fonctionne
pour te montrer sur son fichier
et aussi un truc rigolo en fichier2