je crée un usercontrol carré. j'ai implementer une nouvelle proprité pour dimensionner le control .
je voudrais masquer la propriètés width et height à l'utilisateur final. mais je trouve pas comment![]()
je crée un usercontrol carré. j'ai implementer une nouvelle proprité pour dimensionner le control .
je voudrais masquer la propriètés width et height à l'utilisateur final. mais je trouve pas comment![]()
Je ne pense pas que l'on puisse, car c'est l'objet usercontrol fourni par vb qui affiche ces propriétés.
Par contre tu pourras le faire avec un composant externe en faisant un projet ocx indépendant pour ton user control avec l'evenement resize du user control
J'ai oublié de dire que c'est un control active X
en fait, c'est ca que j'ai deja fait de sorte que l'utilisateur ne peut modifier le control par les proprietes height et width seulement par la propriete dimension
c'est domage qu'on peut pas masquer ces 2 proprietes. ça aurais été mieux. satané VB
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
19 Private mDimension As Long Public Property Get Dimension() As Integer Dimension = mDimension End Property Public Property Let Dimension(d As Integer) mDimension = d UserControl.Width = d UserControl.Height = d End Property Private Sub UserControl_Resize() UserControl.Width = mDimension UserControl.Height = mDimension end sub
merci delbeke
j'ai améliore le code de mon control carré
essayer de le redimensionner avec la souris ou en modifiant les propriétés width et hight il restera carré en se calant sur taile du plus petit coté
le control possede une propriété dimension permettant de modifier la taille du control
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
19
20
21
22
23
24
25
26
27
28 Option Explicit Private Resize As Boolean 'Dimension du control lecture ecriture Public Property Get Dimension() As Long Dimension = UserControl.Width End Property Public Property Let Dimension(D As Long) Resize = False ' interdit le redimensionnement lors de l'evenement resize UserControl.Width = D UserControl.Height = D PropertyChanged "Dimension" End Property Private Sub UserControl_Initialize() Resize = True 'autorise le redimensionnemnt lors de l'evenement resize End Sub 'garde le control carré Private Sub UserControl_Resize() If Resize Then If UserControl.Width < UserControl.Height Then UserControl.Height = UserControl.Width ElseIf UserControl.Width > UserControl.Height Then UserControl.Width = UserControl.Height End If Else Resize = True End If End Sub
Partager