[users-fr] Ooobasic, bug avec les dialogs

2005-03-10 Par sujet Gerard Kohler
bonjour,
j'ai réalisé un petit programme ooobasic, pour pouvoir modifier des 
lettres types.
sur une page j'ai un bouton qui lance un programme.
Ce programme ouvre une boite de dialogue nommée dialog1.
lorsque je fait tourner ce programme en cours de programmation (c-à-d 
lorsque l'éditeur macro est ouvert et/ou vient d'être fermé) tout marche 
parfaitement.
lorsque je lance le programme la première fois,à l'ouverture de la page 
, par une pression sur le bouton, j'ai un message d'erreur :

Action non suportée.
Appel de procédure incorrecte.
cela m'ouvre l'éditeur et me montre la ligne fautive :
Dlg = CreateUnoDialog(monDialogue)
j'avoue que je ne comprendpas bien .
Si je relance immédiatement le pragramme, sans fermer la page, le 
programme marche sans problème.

Avez vous une idée ?
Gérard
Systeme : MandrakeLinux 10.1
OpenOffice 1.1.3
voici le programme fautif :
nom de la macro : main()
bibliothèque : Standart
module : mon_test
dialogue : Dialog
  conporte un bouton de validation et un champ de nom t1
'
'déclaration des variables communes
Dim monDocument As Object
Dim nomDuDocument As String
Dim Dlg As Object
Dim monTexte As String
Dim OKTexte As Boolean


sub main()
'variable de main
'initialisation des variables
monTexte = 
OKTexte = True
'routines
lanceDialog()
if OKTexte then 
'   ouvertureLettre()
'   insertAuSignet()
'   sauveLettre()
else
msgBox(Echec du dialog)
end if
end sub
sub lanceDialog()
'variables pour le dialog
Dim libDialog As Object
Dim monDialogue As Object
Dim exitOK As String
'routine
exitOk = com.sun.star.ui.dialogs.ExecutableDialogResults.OK
libDialog = DialogLibraries.GetByName(Standard)
monDialogue = libDialog.GetByName(Dialog1)
Dlg = CreateUnoDialog(monDialogue)
if Dlg.Execute = exitOK then

end if
Dlg.Dispose
end sub


'

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [users-fr] Ooobasic, bug avec les dialogs

2005-03-10 Par sujet Didier Dorange-Pattoret
Bonsoir Gérard,
Ce n'est pas la bonne liste pour cette question.
Il faut utiliser la liste prog@fr.openoffice.org
Si la macro est dans un document et pas dans le container soffice, je 
parierais compte tenu des symptômes sur le fait que la boite physique 
(dialog1) n'est pas trouvée et donc que la bibliothèque n'est pas chargée.

Pourquoi ne pas préciser:
oLibDoc = Thiscomponent.DialogLibraries rem donne accès au dialog 
librairies du doc.
oLibDoc.LoadLibrary(Standard) rem charge la librairie.

Gerard Kohler a écrit :
bonjour,
j'ai réalisé un petit programme ooobasic, pour pouvoir modifier des 
lettres types.
sur une page j'ai un bouton qui lance un programme.
Ce programme ouvre une boite de dialogue nommée dialog1.
lorsque je fait tourner ce programme en cours de programmation (c-à-d 
lorsque l'éditeur macro est ouvert et/ou vient d'être fermé) tout 
marche parfaitement.
lorsque je lance le programme la première fois,à l'ouverture de la 
page , par une pression sur le bouton, j'ai un message d'erreur :

Action non suportée.
Appel de procédure incorrecte.
cela m'ouvre l'éditeur et me montre la ligne fautive :
Dlg = CreateUnoDialog(monDialogue)
j'avoue que je ne comprendpas bien .
Si je relance immédiatement le pragramme, sans fermer la page, le 
programme marche sans problème.

Avez vous une idée ?
Gérard
Systeme : MandrakeLinux 10.1
OpenOffice 1.1.3
voici le programme fautif :
nom de la macro : main()
bibliothèque : Standart
module : mon_test
dialogue : Dialog
  conporte un bouton de validation et un champ de nom t1
'
'déclaration des variables communes
Dim monDocument As Object
DimnomDuDocument As String
Dim Dlg As Object
Dim monTexte As String
Dim OKTexte As Boolean


sub main()
'variable de main
'initialisation des variables
monTexte = 
OKTexte = True
'routines
lanceDialog()
if OKTexte then   
'ouvertureLettre()
'insertAuSignet()   
'sauveLettre()
else
msgBox(Echec du dialog)
end if
end sub

sub lanceDialog()
'variables pour le dialog
Dim libDialog As Object
Dim monDialogue As Object
Dim exitOK As String
'routine
exitOk = com.sun.star.ui.dialogs.ExecutableDialogResults.OK
libDialog = DialogLibraries.GetByName(Standard)
monDialogue = libDialog.GetByName(Dialog1)
Dlg = CreateUnoDialog(monDialogue)
if Dlg.Execute = exitOK then

end if
Dlg.Dispose
end sub



'

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

--
Didier Dorange-Pattoret
http://www.dmaths.org
http://sesamath.net
S'inscrire à la liste de diffusion de dmaths: [EMAIL PROTECTED]
Ses archives: http://listes.dmaths.org/wws/arc/users
Les Forums: http://www.dmaths.org/modules.php?name=Forums
Mailing List in english: 
http://www.dmaths.org/modules.php?name=Contentpa=showpagepid=9
Le livre de référence pour OpenOffice.org : 
http://www.amazon.fr/exec/obidos/ASIN/221211348X/dmaths-21
Programmation OpenOffice.org : 
http://www.amazon.fr/exec/obidos/ASIN/2212114397/dmaths-21
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [users-fr] Ooobasic, bug avec les dialogs

2005-03-10 Par sujet Gerard Kohler
merci et encore milles excuses pour m'être trompé de liste
Gérard
Didier Dorange-Pattoret a écrit :
Bonsoir Gérard,
Ce n'est pas la bonne liste pour cette question.
Il faut utiliser la liste prog@fr.openoffice.org
Si la macro est dans un document et pas dans le container soffice, je 
parierais compte tenu des symptômes sur le fait que la boite physique 
(dialog1) n'est pas trouvée et donc que la bibliothèque n'est pas 
chargée.

Pourquoi ne pas préciser:
oLibDoc = Thiscomponent.DialogLibraries rem donne accès au dialog 
librairies du doc.
oLibDoc.LoadLibrary(Standard) rem charge la librairie.

Gerard Kohler a écrit :
bonjour,
j'ai réalisé un petit programme ooobasic, pour pouvoir modifier des 
lettres types.
sur une page j'ai un bouton qui lance un programme.
Ce programme ouvre une boite de dialogue nommée dialog1.
lorsque je fait tourner ce programme en cours de programmation (c-à-d 
lorsque l'éditeur macro est ouvert et/ou vient d'être fermé) tout 
marche parfaitement.
lorsque je lance le programme la première fois,à l'ouverture de la 
page , par une pression sur le bouton, j'ai un message d'erreur :

Action non suportée.
Appel de procédure incorrecte.
cela m'ouvre l'éditeur et me montre la ligne fautive :
Dlg = CreateUnoDialog(monDialogue)
j'avoue que je ne comprendpas bien .
Si je relance immédiatement le pragramme, sans fermer la page, le 
programme marche sans problème.

Avez vous une idée ?
Gérard
Systeme : MandrakeLinux 10.1
OpenOffice 1.1.3
voici le programme fautif :
nom de la macro : main()
bibliothèque : Standart
module : mon_test
dialogue : Dialog
  conporte un bouton de validation et un champ de nom t1
'
'déclaration des variables communes
Dim monDocument As Object
DimnomDuDocument As String
Dim Dlg As Object
Dim monTexte As String
Dim OKTexte As Boolean


sub main()
'variable de main
'initialisation des variables
monTexte = 
OKTexte = True
'routines
lanceDialog()
if OKTexte then   'ouvertureLettre()
'insertAuSignet()   'sauveLettre()
else
msgBox(Echec du dialog)
end if
end sub
sub lanceDialog()
'variables pour le dialog
Dim libDialog As Object
Dim monDialogue As Object
Dim exitOK As String
'routine
exitOk = com.sun.star.ui.dialogs.ExecutableDialogResults.OK
libDialog = DialogLibraries.GetByName(Standard)
monDialogue = libDialog.GetByName(Dialog1)
Dlg = CreateUnoDialog(monDialogue)
if Dlg.Execute = exitOK then
end if
Dlg.Dispose
end sub


'

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]