[Résolu][Basic] Titre de la fenêtre Ouvrir fichier

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: 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 !
mgc99
NOOuvel adepte
NOOuvel adepte
Messages : 12
Inscription : 17 janv. 2015 16:02
Localisation : Neuilly-Plaisance

[Résolu][Basic] Titre de la fenêtre Ouvrir fichier

Message par mgc99 »

Bonjour à tous,
J'ai récupérer sur internet une macro ChooseAFileName que j'ai modifier à ma sauce.

Code : Tout sélectionner

Function ChooseAFileName(nom) As String
  Dim vFileDialog         'FilePicker service instance
  Dim vFileAccess         'SimpleFileAccess service instance
  Dim iAccept as Integer  'Response to the FilePicker
  Dim sInitPath as String 'Hold the initial path
  'Note: The following services MUST be called in the following order
  'or Basic will not remove the FileDialog Service
  vFileDialog = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
  vFileAccess = CreateUnoService("com.sun.star.ucb.SimpleFileAccess")
  'Set the initial path here!
'  sInitPath = ConvertToUrl(CurDir)
'  If vFileAccess.Exists(sInitPath) Then
'    vFileDialog.SetDisplayDirectory(sInitPath)
'  End If
  vFileDialog.appendFilter("Textes txt", "*.txt")
  vFileDialog.appendFilter("Tous", "*.*")
  vFileDialog.appendFilter("OXO sub", "*.sub")
  vFileDialog.appendFilter("OXO ver", "*.ver")
 
  if nom = "Ouvrir OXO.sub" then 
    vFileDialog.CurrentFilter = "OXO sub"
  else
    if nom = "Ouvrir OXO.ver" then
      vFileDialog.CurrentFilter = "OXO ver"
    else
    vFileDialog.CurrentFilter = "Textes txt"
    endif
  endif
  vFileDialog.Title = nom
  
  iAccept = vFileDialog.Execute()       'Run the file chooser dialog
  If iAccept = 1 Then                   'What was the return value?
    ChooseAFileName = vFileDialog.Files(0) 'Set file name if it was not canceled
  End If
  vFileDialog.Dispose()                 'Dispose of the dialog
End Function
Cette fonction est parfaite mais depuis que je suis passé sous windows 10 64bit V.1803, je constate que le titre de la fenestre "Ouvrir" reste à "Ouvrir" alors qu'avec win XP je pouvais modifier ce titre. "vFileDialog.Title = nom" dans le code.

Quelqu'un sait-il ce qu'il faut changer dans le code pour que l'on puisse modifier le titre de la fenestre ouvrir ?

Merci pour les réponses

Salut à la prochaine
Michel

PS j'utilise OpenOffice 4.1.5
Dernière modification par mgc99 le 06 août 2018 18:59, modifié 2 fois.
OpenOffice 4.1.15 sous Windows 10 64bit 22H2 et Java 1.8.0.411
Avatar de l’utilisateur
Jurassic Pork
PassiOOnné
PassiOOnné
Messages : 629
Inscription : 09 août 2017 22:15

Re: [Basic] Titre de la fenestre Ouvrir fichier

Message par Jurassic Pork »

hello,
je ne sais pas si c'est un bug mais effectivement le problème est présent avec A.O.O 4.1.5 sous windows 10. Avec LibreOffice 5.4.4.2 sous windows 10 je n'ai pas le problème.
En rajoutant quelques instructions à ta macro cela semble faire disparaître le problème :

Code : Tout sélectionner

  vFileDialog = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
  Dim DialogTyp(0)
   DialogTyp(0) = com.sun.star.ui.dialogs.TemplateDescription.FILEOPEN_SIMPLE
   vFileDialog.initialize(DialogTyp())
   vFileAccess = CreateUnoService("com.sun.star.ucb.SimpleFileAccess")
Ami calmant, J.P
LibreOffice 7.6.2.1 et OpenOffice 4.1.15 sous windows 11
LibreOffice 24.2.0 et OpenOffice 4.1.15 sous Ubuntu 20.04
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25184
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Basic] Titre de la fenêtre Ouvrir fichier

Message par Dude »

Rapport de bogue 96720 et fixé pour la prochaine 4.2.0
Le contournement est effectivement d'initialiser les constantes du service FilePicker.
Poser une question, c'est bien. Répondre aux autres, c'est encore mieux.
Améliorez AOO et votez pour les issues
mgc99
NOOuvel adepte
NOOuvel adepte
Messages : 12
Inscription : 17 janv. 2015 16:02
Localisation : Neuilly-Plaisance

Re: [Basic] Titre de la fenêtre Ouvrir fichier

Message par mgc99 »

Salut et merci pour les réponses.
Le code fonctionne parfaitement

Salut à la prochaine
Michel
OpenOffice 4.1.15 sous Windows 10 64bit 22H2 et Java 1.8.0.411