Merci Bernard
C'est effectivement un peu spécial comme logique.
Mais pourquoi pas, on s'adapte.

Un exemple pour ceux qui auront ce genre de question (améliorable
j'imagine)
Soit un dialogue (dialog3)
Dans ce dialogue, des objets répartis sur 3 niveaux (step) :
Step  1 : 2 radio button (choix 1 et 2)
Step  2 : 2 check box (options 1 et 2)
Step  3 : un TextField, un OK (pour terminer)

En step 0 :
Un label "titre" contenant successivement page 1, page 2, page 3
Un bouton "bouton" (!!!) lié sur déclenchement à la macro "pagesuivante"
Le texte de ce bouton contiendra successivement :
Aller page 2, aller page 3
Le dialogue lui-même est en step 1

On lance par MAIN.
En cliquant sur "aller page 2" on arrive à la page 2.
Idem pour la page 3.
Les choix et options sont obligatoires.
En fin de dialogue, le textfield bilan récapitule nos choix.

Le code qui va bien :
private dlg as object

Sub dialogue3
        monclasseur = ThisComponent 
        lafeuille=monclasseur.Sheets.getByName ("exo5")
        DialogLibraries.LoadLibrary("Standard")
        bibli=DialogLibraries.GetByName("Standard")
        mondialogue=bibli.GetByName("Dialog3")
        dlg=CreateUnoDialog(mondialogue)
        dlg.execute
        dlg.dispose
End Sub

sub pagesuivante
        etatDialog3=dlg.model.step
        select case etatDialog3
        case 1 
        if (dlg.getControl("OptionButton1").state or _
dlg.getControl("OptionButton2").state) then             
                dlg.model.step=2
                dlg.getControl("titre").text="PAGE 2"
                dlg.getControl("bouton").label="Aller page 3"
        else
                msgbox("choix obligatoire")
        end if          
        case 2 
        if (dlg.getControl("CheckBox1").state or _
dlg.getControl("CheckBox2").state) then         
                dlg.model.step=3
                dlg.getControl("titre").text="PAGE 3"
                dlg.getControl("bouton").visible=false
                if dlg.getControl("OptionButton1").state then
texte1="choix 1"
                if dlg.getControl("OptionButton2").state then
texte1="choix 2"
                if dlg.getControl("CheckBox1").state then texte2="option
1"
                if dlg.getControl("CheckBox2").state then texte2="option
2"
                Dlg.getControl("bilan").text=texte1 & "/" & texte2
        else
                msgbox("option obligatoire")
        end if
        end select
end sub


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

Répondre à