Bonjour. Si j'ai une picture box affichée et que j'appele une fenêtre (je suis dans une application mdi) cette dernière s'affiche sous la picture box.
Serait-il possible qu'elle s'affiche SUR la picture box ?
Bonjour. Si j'ai une picture box affichée et que j'appele une fenêtre (je suis dans une application mdi) cette dernière s'affiche sous la picture box.
Serait-il possible qu'elle s'affiche SUR la picture box ?
Salut
Essaie
Si ça marche pas, tu dis
Code : Sélectionner tout - Visualiser dans une fenêtre à part MaFenetre.ZOrder
- Pour les nouveaux : Mode d'emploi et aide aux nouveaux
- et impérativement les règles du forum. Histoire de garder une ambiance amicale.
- Noubliez pas les balises de Code pour vos listings : bouton # de l'éditeur. Et n'oubliez pas non plus de bouton
- Cours Excel - FAQ Excel - Forum Excel - Cours VBA - Cours complet VBA Excel
Cela ne fonctionne pas. J'ai ceci
La picturebox s'affiche bien avec son contenu, elle est à la bonne taille mais impossible d'ouvrir une fenêtre par dessus
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3pictureMain.Visible = True pictureMain.ZOrder pictureMain.Height = Me.Height
ZOrder sur la fenêtre, pas sur le pictureBox. ZOrder ramène à l'avant le contrôle (ou conteneur) qui est derrière.
- Pour les nouveaux : Mode d'emploi et aide aux nouveaux
- et impérativement les règles du forum. Histoire de garder une ambiance amicale.
- Noubliez pas les balises de Code pour vos listings : bouton # de l'éditeur. Et n'oubliez pas non plus de bouton
- Cours Excel - FAQ Excel - Forum Excel - Cours VBA - Cours complet VBA Excel
J'ai donc remplacé mon picturemain.ZOrder par mdiform1.ZOrder mais il n'y a pas eu de changement mes fenêtres s'ouvrant toujours sous la picture box
Je fais des tests et t'en reparle... demain. Tu dis si c'est trop tard.
- Pour les nouveaux : Mode d'emploi et aide aux nouveaux
- et impérativement les règles du forum. Histoire de garder une ambiance amicale.
- Noubliez pas les balises de Code pour vos listings : bouton # de l'éditeur. Et n'oubliez pas non plus de bouton
- Cours Excel - FAQ Excel - Forum Excel - Cours VBA - Cours complet VBA Excel
Les tests ont étés plus rapides que prévu.
C'est comme je te disais en message privé.
Si tu place ton pictureBox dans une fenêtre sans bordures, tu pourra la gérer comme les autres fenêtres filles. Seulement elle sera affichée dans le menu Fenêtres de ton application.
Voici ce que j'ai fait. J'ai d'abord créé une fenêtre (objet Form) et placé ces différentes valeurs:
Tu y mets l'image de ton choix.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Propriété Valeur Name frmPicture BorderStyle 0 - None Caption Image 'pour le menu Fenetre
J'ai ensuite codé ceci dans frmPicture:
Et ajouté cette ligne dans la procédure de lancement de l'appli:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Private Sub Form_Load() Me.Width = Picture1.Width Me.Height = Picture1.Height End Sub Private Sub Picture1_Resize() frmPicture.Width = Picture1.Width frmPicture.Height = Picture1.Height End Sub
Sans oublier de coder LoadPictureForm
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Private Sub MDIForm_Load() Me.Left = GetSetting(App.Title, "Settings", "MainLeft", 1000) Me.Top = GetSetting(App.Title, "Settings", "MainTop", 1000) Me.Width = GetSetting(App.Title, "Settings", "MainWidth", 6500) Me.Height = GetSetting(App.Title, "Settings", "MainHeight", 6500) LoadPictureForm ' juste avant d'ouvrir un document LoadNewDoc End Sub
Après, lorsque tu ouvres un document, celui-ci sera toujours à l'avant plan.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub LoadPictureForm() Dim frmP As frmPicture Set frmP = New frmPicture frmP.Top = 0 frmP.Left = 0 frmP.Show End Sub
Edit :
Je fais d'autres tests pour empêcher d'ajouter le frmPicture dans le menu fenêtre et le rendre 'inclicable'.
- Pour les nouveaux : Mode d'emploi et aide aux nouveaux
- et impérativement les règles du forum. Histoire de garder une ambiance amicale.
- Noubliez pas les balises de Code pour vos listings : bouton # de l'éditeur. Et n'oubliez pas non plus de bouton
- Cours Excel - FAQ Excel - Forum Excel - Cours VBA - Cours complet VBA Excel
Merci.
J'étais parti sur une autre piste (la picture box est censé contenir une image (je veux donc mettre une image de fond sur mon appli)) mais je vais voir si ceci fontcionne
et MDIForm1.picture = loadpicture ...
ca ne suffit pas ?
Vous vous posez une question, la réponse est peut-être ici :
Toutes les FAQs VB
Les Cours et Tutoriels VB6/VBScript
Les Sources VB6
Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension
L'image se charge bien mais aux dimensions de l'image alors que j'aurais souhaité qu'elle s'ouvre aux dimensions de l'écran.
De plus mon application permet de changer le fond d'écran et il y a des bugs avec ce systeme (au niveau du rafraichissement de l'image)
C'est pour ça que j'avais pensé à l'insérer dans une picture box conteant un controlleur image. En étirant l'image à la taille de la picture box elle meme etirée a la taille de l'écran j'avais une image couvrant toute la surface de mon écran.
Salut
et la propriété AutoRedraw sur ta form principale, si tu la mets à True?
Edit : bon, je vois, pas de AutoRedraw...
Alors, j'ai pas d'idée sur ce coup-là.
- Pour les nouveaux : Mode d'emploi et aide aux nouveaux
- et impérativement les règles du forum. Histoire de garder une ambiance amicale.
- Noubliez pas les balises de Code pour vos listings : bouton # de l'éditeur. Et n'oubliez pas non plus de bouton
- Cours Excel - FAQ Excel - Forum Excel - Cours VBA - Cours complet VBA Excel
Hum !
Et pourtant... mettre une image de fond (propriété picture de la Form), sur la form, adaptée, quelles que soient ses dimensions, aux dimensions de la form... est loin d'être une mission impossible...
J'en pleurerais !
le paintpicture est à mon gout bien plus maniable... et plus simple.
Méphistophélès
Si la solution ne résout pas votre problème, changez le problème...
Cours et tutoriels C++ - FAQ C++ - Forum C++.
Bon, a part des idées des mecs rogolos , j'avais dit que je verrais comment empêcher l'affichage de la frmPicture dans le menu Fenêtre... Pour peut que le menu Fenêtre ait la propriété ListWindows à True...
C'est la ligne en gras:
Les gars (Thierry et jmf), j'ai cru comprendre que c'était pas un problème de redimentionnement en tant que tel mais plutôt un problème de raffraichissement de l'image lors d'un redimentionnement... à moins que j'ai tout compris de travers... ça m'arrive parfois.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Private Sub LoadPictureForm() Dim frmP As frmPicture Set frmP = New frmPicture frmP.Top = 0 frmP.Left = 0 frmP.Enabled = False frmP.Show End Sub
- Pour les nouveaux : Mode d'emploi et aide aux nouveaux
- et impérativement les règles du forum. Histoire de garder une ambiance amicale.
- Noubliez pas les balises de Code pour vos listings : bouton # de l'éditeur. Et n'oubliez pas non plus de bouton
- Cours Excel - FAQ Excel - Forum Excel - Cours VBA - Cours complet VBA Excel
Bon.
Et il se passe quoi quand on redimentionne la fenêtre a mano?
- Pour les nouveaux : Mode d'emploi et aide aux nouveaux
- et impérativement les règles du forum. Histoire de garder une ambiance amicale.
- Noubliez pas les balises de Code pour vos listings : bouton # de l'éditeur. Et n'oubliez pas non plus de bouton
- Cours Excel - FAQ Excel - Forum Excel - Cours VBA - Cours complet VBA Excel
Bonjour zaza,
Pardi ! on lui applique ce calcul d'entrée de jeu !
On ne fait généralement ce genre de calcul qu'une seule fois, au chargement. Cette démo (et donc ses zooms) montre comment on peut à partir d'une même image, modifier la taille de l'affichage de l'image de fond, en évitant d'ajout d'un contrôle container
Je me suis servi du code de jmf pour améliorer la mien. Le rafraichissement d'image s'effectue bien ... problème : il me met une erreur : variable objet ou bloc with non définie.
En bidouillant un peu j'ai ensuite obtenu une "erreur : type incompatible"
suite à ça et malgré ces message d'erreur, le rafraichissement de l'image de fond s'effectue comme il faut
Salut
Me v'la avec mon café matinal (les gars viennent de partir pour l'école, je suis seule avec ma pitchounette) et je viens le finir avec vous.
jmf:
Je me suis amusée avec ton zoom. Chouette! Mais il se passe un truc bizarre quand je drague une bordure pour agrandir la fenêtre. T'as essayé?
- Pour les nouveaux : Mode d'emploi et aide aux nouveaux
- et impérativement les règles du forum. Histoire de garder une ambiance amicale.
- Noubliez pas les balises de Code pour vos listings : bouton # de l'éditeur. Et n'oubliez pas non plus de bouton
- Cours Excel - FAQ Excel - Forum Excel - Cours VBA - Cours complet VBA Excel
Bonjour zaza,
Non, je n'ai pas essayé car tel n'était pas le but .
Le but ? Démontrer que l'on peut modifier la taille de l'affichage de l'image de fond... c'est tout.
Pour répondre à ta question, maintenant :
fastoche : tu détermines le nouveau coefficient en fonction de l'ancienne taille de la Form et de sa nouvelle taille ... puis appelles ajustimage avec ce coefficient... c'est tout...
Essayes et si tu n'y paviens pas, dis-le et je te fais cette petite bébelle supplémentaire ...
Alors, la ouananiche ? Bonne cette année ?
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager