Tiens, j'en fais profiter la communauté, j'ai encore passé 2 heures là-dessus avant de me rendre compte de la blagounette suivante :
si un contrôle a sa propriété Visible à False à la conception, ben il va rester invisible, quoi qu'on fasse...
Enfin, ça a peut-être évolué depuis ma version de LO : 3.5.4.2

L'astuce consiste donc à ne pas le mettre invisible et à changer ça à l'arrache dans le main, si on veut que la form démarre avec ces contrôles-là invisibles.

Genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
Dim oCkbModif as Object ' pour accéder au CheckBox qui pilote la visibilité de 3 autres contrôles
Sub Main
	DialogLibraries.LoadLibrary("Standard")
	SaisieInfos = CreateUnoDialog( DialogLibraries.Standard.SaisieInfos )
	' 3 lignes pour faire prendre en compte les composants invisibles
	' au bas de la feuille : si invisibles à la conception, ils le restent... :-(
	oCkbModif = SaisieInfos.GetControl("ckbModif")
	oCkbModif.State = "0" 
	ckbModifChange
	SaisieInfos.Execute() 'boucle de messages genre Delphi
End Sub
et la boucle sur l'état du Checkbox :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
' un label, une boîte de saisie numérique, et un bouton
Sub ckbModifChange
	'dim oCkbModif as Object, --> global
	dim oLabel5 as Object, oedNumLine as object, obtnModifier as object 
	'oCkbModif = SaisieInfos.GetControl("ckbModif") --> dans le Main
	oLabel5 = SaisieInfos.GetControl("Label5")
	oedNumLine = SaisieInfos.GetControl("edNumLine")
	obtnModifier = SaisieInfos.GetControl("btnModifier")
	if oCkbModif.State = "0" then 
		oLabel5.Visible = False
		oedNumLine.Visible = False
		obtnModifier.Visible = False
	else
		oLabel5.Visible = True
		oedNumLine.Visible = True
		obtnModifier.Visible = True
	end if
End Sub
Enjoy,