Bonjour
Est-il possible de modifier l'image de fond d'une boite de dialogue en mode exécution (via un bouton par exemple) ?
[Résolu][Calc]Modifier image de fond d'une boite de dialogue
Modérateur : Vilains modOOs
Règles du forum
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
-
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 09 avr. 2018 14:07
[Résolu][Calc]Modifier image de fond d'une boite de dialogue
Dernière modification par Bastos le 10 avr. 2018 07:58, modifié 2 fois.
OpenOffice 3.3.0 (pas de possibilite de mettre a jour = politique de securite de mon Service Informatique)
LibreOffice 5.2.7.2 (idem)
Windows 7 Professionel (idem)
LibreOffice 5.2.7.2 (idem)
Windows 7 Professionel (idem)
-
- IdOOle de la suite
- Messages : 25181
- Inscription : 03 mars 2006 07:45
- Localisation : 127.0.0.1
Re: [Calc] Modifier l'image de fond d'une boite de dialogue
Salut,
Il faut remonter sur la propriété .model.imageURL de ton objet dialogue pour régler ça.
On rappelle que l'abus d'images est dangereux pour la santé du document
Il faut remonter sur la propriété .model.imageURL de ton objet dialogue pour régler ça.
On rappelle que l'abus d'images est dangereux pour la santé du document
-
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 09 avr. 2018 14:07
Re: [Calc] Modifier l'image de fond d'une boite de dialogue
Bonsoir
J'ai essayé ça (voir document joint) sans grand succès :
Pas de message d'erreur, mais pas d'apparition d'image de fond non plus (j'ai essayé avec plusieurs fichiers Test.jpg de tailles différentes, ça ne change rien).
Après je ne suis pas certain de ma bonne utilisation du ConvertToUrl (j'ai également essayé ConvertToUrl("file:///C:/Temp/Test.jpg"), même conséquence)
J'ai essayé ça (voir document joint) sans grand succès :
Code : Tout sélectionner
Public Ma_boite_de_dialogue
'----------------------------------------------
Sub Ouvre_boite_de_dialogue()
DialogLibraries.LoadLibrary("Standard")
Ma_boite_de_dialogue=CreateUnodialog(DialogLibraries.Standard.Dialog1)
Ma_boite_de_dialogue.Execute()
End Sub
'----------------------------------------------
Sub Modifier_Image_de_fond()
Ma_boite_de_dialogue.Model.ImageURL = ConvertToUrl("C:\Temp\Test.jpg")
End Sub
Après je ne suis pas certain de ma bonne utilisation du ConvertToUrl (j'ai également essayé ConvertToUrl("file:///C:/Temp/Test.jpg"), même conséquence)
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 3.3.0 (pas de possibilite de mettre a jour = politique de securite de mon Service Informatique)
LibreOffice 5.2.7.2 (idem)
Windows 7 Professionel (idem)
LibreOffice 5.2.7.2 (idem)
Windows 7 Professionel (idem)
-
- InconditiOOnnel
- Messages : 936
- Inscription : 27 nov. 2010 00:17
- Localisation : gâtine deux-sèvrienne
Re: [Calc] Modifier l'image de fond d'une boite de dialogue
Bonjour
Voir ce fil qui donne une solution Image de fond de dialogue ne s'affiche pas
Et le fichier
Cordialement
Luke
Voir ce fil qui donne une solution Image de fond de dialogue ne s'affiche pas
un exemple qui utilise également des images présente dans le fichier maisgerardmarquer a écrit :Contourner le problème, en créant un contrôle Image qui couvre toute la boîte de dialogue
Dude a écrit :On rappelle que l'abus d'images est dangereux pour la santé du document
Code : Tout sélectionner
Public Dlg As Object
Public Index as integer
Sub Image_Dans_Dialogue
DialogLibraries.LoadLibrary("Standard")
Dlg = CreateUnoDialog(DialogLibraries.Standard.Dialog1)
boite = Dlg.getControl("ImageControl1").Model
Dlg.getControl("ImageControl1").Model.ImageUrl = converttourl("C:\Temp\Test.jpg")
Index = 0
Dlg.Execute
End Sub
Sub Change_Images
If Index = 0 Then
Dlg.getControl("ImageControl1").Model.Graphic = ThisComponent.Sheets.getByName("Images").Drawpage.GetByIndex("1").Graphic
Index = 1
Else
Dlg.getControl("ImageControl1").Model.Graphic = ThisComponent.Sheets.getByName("Images").Drawpage.GetByIndex("0").Graphic
Index = 0
End if
End Sub
Luke
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
AOO 4.1.3 et LibO 5.3.7.2 Ubuntu 16.04 LTS et Debian 9
Xray ne tient pas lieu de tout, mais une pratique sans Xray ne vaut pas grand chose
Xray ne tient pas lieu de tout, mais une pratique sans Xray ne vaut pas grand chose
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Calc] Modifier l'image de fond d'une boite de dialogue
Bonsoir
A priori l'image doit être chargée avant l'exécution du dialogue.
J'en déduis que si tu veux changer l'image, tu dois fermer et ré-ouvrir le dialogue avec la nouvelle image.
Une solution éventuelleMais
A+
A priori l'image doit être chargée avant l'exécution du dialogue.
J'en déduis que si tu veux changer l'image, tu dois fermer et ré-ouvrir le dialogue avec la nouvelle image.
Une solution éventuelle
Code : Tout sélectionner
Sub Ouvre_boite_de_dialogue()
Dim Chemin as String
DialogLibraries.LoadLibrary("Standard")
oDlg=CreateUnodialog(DialogLibraries.Standard.Dialog1)
Chemin = getDirectory(thisComponent.URL)
images = Array(Chemin &"Roura.jpg",Chemin & "guyane2.jpg")
oDlg.Model.ImageURL = ConvertToUrl(images(0))
valeur = 0
oDlg.Execute()
End Sub
'----------------------------------------------
Sub Modifier_Image_de_fond()
oDlg.endExecute
DialogLibraries.LoadLibrary("Standard")
oDlg=CreateUnodialog(DialogLibraries.Standard.Dialog1)
If valeur = 0 Then
oDlg.Model.ImageURL = ConvertToUrl(images(1))
Valeur = 1
Else
oDlg.Model.ImageURL = ConvertToUrl(images(0))
Valeur = 0
End If
oDlg.Execute
end sub
Function getDirectory(URLPath As String) As String
Dim parts As Variant
parts = split(URLPath, "/")
parts(UBound(parts())) = ""
getDirectory = join(parts, "/")
End Function
J'ai peut-être été un peu lourd sur les imagesDude a écrit :On rappelle que l'abus d'images est dangereux pour la santé du document
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 09 avr. 2018 14:07
Re: [Calc] Modifier l'image de fond d'une boite de dialogue
Bonjour
La solution de Piaf me convient parfaitement car si on ajoute des contrôles dans notre boite de dialogue, ils sont directement visibles et utilisables : Super !
(Le problème, de mon point de vue, de l'option proposée par luky-luke (Contrôle Picto adapté à la taille de la boite de dialogue) est qu'elle semble nécessiter d'autres lignes de code pour pouvoir voir et utiliser les autres contrôles de la boite de dialogue : l'abus de code est également dangereux pour la santé d'un document ;o))
En tout cas merci beaucoup pour toutes ces réponses.
Bonne journée.
La solution de Piaf me convient parfaitement car si on ajoute des contrôles dans notre boite de dialogue, ils sont directement visibles et utilisables : Super !
(Le problème, de mon point de vue, de l'option proposée par luky-luke (Contrôle Picto adapté à la taille de la boite de dialogue) est qu'elle semble nécessiter d'autres lignes de code pour pouvoir voir et utiliser les autres contrôles de la boite de dialogue : l'abus de code est également dangereux pour la santé d'un document ;o))
En tout cas merci beaucoup pour toutes ces réponses.
Bonne journée.
OpenOffice 3.3.0 (pas de possibilite de mettre a jour = politique de securite de mon Service Informatique)
LibreOffice 5.2.7.2 (idem)
Windows 7 Professionel (idem)
LibreOffice 5.2.7.2 (idem)
Windows 7 Professionel (idem)