OVH Cloud OVH Cloud

Objet Form

3 réponses
Avatar
Jean Saint Jalmes
Bonjour,

Apr=E8s chargement d'une feuille dans une appli VB6.0, y =E0=20
t'il un moyen pour r=E9initialiser tous les contr=F4les de la=20
feuille.
Je voudrais effacer le contenu de tous les TextBox.

Pour l'instant, j'utilise la proc=E9dure suivante qui n'est=20
peut =EAtre pas id=E9ale.

Private sub Clear_Window(RefForm as Form)

Dim Cnt as Control

on error resume next
for each Cnt in RefForm.Controls
if Cnt.TabStop then Cnt.text =3D ""
next
End sub

Merci de m'indiquer une m=E9thode ou une API qui permet de=20
faire la m=EAme chose plus efficacement.

Jean

3 réponses

Avatar
LE TROLL
Bonjour,

Au lancement les objets sont vidés, à l'exception de ce que tu as
enregistré en dur dans ces derniers (propriété text", alors si tu n'écris
rien (si tu efface), le textBox manuellement à la création, ensuite, au
redémarrage, tu n'as plus besoin de l'initialiser, car il prend par défaut
la propriété en dur entrée manuellement, qui si elle est vide, fera un objet
vide quant à son contenu...

Sinon, pour l'effacement, j'ai une préférence pour la simplicité:

for i = 1 to x
text(i) = ""
next i

nb, pour synchroniser tout à 1, si j'ai besoin de 10 contrôles par exemple,
j'en crée 11 [x(0) à x(10)], puis je supprime le 0...

OU

text = ""
------------

"Jean Saint Jalmes" a écrit dans le
message de news:203b01c4a793$8c9172f0$
Bonjour,

Après chargement d'une feuille dans une appli VB6.0, y à
t'il un moyen pour réinitialiser tous les contrôles de la
feuille.
Je voudrais effacer le contenu de tous les TextBox.

Pour l'instant, j'utilise la procédure suivante qui n'est
peut être pas idéale.

Private sub Clear_Window(RefForm as Form)

Dim Cnt as Control

on error resume next
for each Cnt in RefForm.Controls
if Cnt.TabStop then Cnt.text = ""
next
End sub

Merci de m'indiquer une méthode ou une API qui permet de
faire la même chose plus efficacement.

Jean
Avatar
Jean Saint Jalmes
Je n'ai pas de problème lié à la valeur initiale des
contrôles d'une feuille lors du chargement.

Mon problème est de vider tous les contrôles après une
première (ou xième utilisation).

Bien compris la méthode pour effacer 10 textbox mais si je
veux écrire une procédure plus généraliste qui me permet
de remettre à blanc tous les controles d'une feuille sans
préjuger du nombre ni du type de controle qu'elle englobe,
je dois utiliser l'exemple que j'ai indiqué.


-----Message d'origine-----
Bonjour,

Au lancement les objets sont vidés, à l'exception de


ce que tu as
enregistré en dur dans ces derniers (propriété text",


alors si tu n'écris
rien (si tu efface), le textBox manuellement à la


création, ensuite, au
redémarrage, tu n'as plus besoin de l'initialiser, car il


prend par défaut
la propriété en dur entrée manuellement, qui si elle est


vide, fera un objet
vide quant à son contenu...

Sinon, pour l'effacement, j'ai une préférence pour la


simplicité:

for i = 1 to x
text(i) = ""
next i

nb, pour synchroniser tout à 1, si j'ai besoin de 10


contrôles par exemple,
j'en crée 11 [x(0) à x(10)], puis je supprime le 0...

OU

text = ""
------------

"Jean Saint Jalmes"


a écrit dans le
message de news:203b01c4a793$8c9172f0$
Bonjour,

Après chargement d'une feuille dans une appli VB6.0, y à
t'il un moyen pour réinitialiser tous les contrôles de la
feuille.
Je voudrais effacer le contenu de tous les TextBox.

Pour l'instant, j'utilise la procédure suivante qui n'est
peut être pas idéale.

Private sub Clear_Window(RefForm as Form)

Dim Cnt as Control

on error resume next
for each Cnt in RefForm.Controls
if Cnt.TabStop then Cnt.text = ""
next
End sub

Merci de m'indiquer une méthode ou une API qui permet de
faire la même chose plus efficacement.

Jean


.



Avatar
Guy DETIENNE
Salut ;O)

Je crois que ton exemple est le plus approprié. Et entre nous, cela ne
demande que quelques lignes de code, donc très peu contraignant.

Guy


"Jean Saint Jalmes" a écrit dans le
message de news: 095001c4a7c6$be218ed0$
Je n'ai pas de problème lié à la valeur initiale des
contrôles d'une feuille lors du chargement.

Mon problème est de vider tous les contrôles après une
première (ou xième utilisation).

Bien compris la méthode pour effacer 10 textbox mais si je
veux écrire une procédure plus généraliste qui me permet
de remettre à blanc tous les controles d'une feuille sans
préjuger du nombre ni du type de controle qu'elle englobe,
je dois utiliser l'exemple que j'ai indiqué.


-----Message d'origine-----
Bonjour,

Au lancement les objets sont vidés, à l'exception de


ce que tu as
enregistré en dur dans ces derniers (propriété text",


alors si tu n'écris
rien (si tu efface), le textBox manuellement à la


création, ensuite, au
redémarrage, tu n'as plus besoin de l'initialiser, car il


prend par défaut
la propriété en dur entrée manuellement, qui si elle est


vide, fera un objet
vide quant à son contenu...

Sinon, pour l'effacement, j'ai une préférence pour la


simplicité:

for i = 1 to x
text(i) = ""
next i

nb, pour synchroniser tout à 1, si j'ai besoin de 10


contrôles par exemple,
j'en crée 11 [x(0) à x(10)], puis je supprime le 0...

OU

text = ""
------------

"Jean Saint Jalmes"


a écrit dans le
message de news:203b01c4a793$8c9172f0$
Bonjour,

Après chargement d'une feuille dans une appli VB6.0, y à
t'il un moyen pour réinitialiser tous les contrôles de la
feuille.
Je voudrais effacer le contenu de tous les TextBox.

Pour l'instant, j'utilise la procédure suivante qui n'est
peut être pas idéale.

Private sub Clear_Window(RefForm as Form)

Dim Cnt as Control

on error resume next
for each Cnt in RefForm.Controls
if Cnt.TabStop then Cnt.text = ""
next
End sub

Merci de m'indiquer une méthode ou une API qui permet de
faire la même chose plus efficacement.

Jean


.