begin process at 2012 02 13 11:46:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Divers

 > 

Code pour les boutons "Suivant" et "Précédent"


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Code pour les boutons "Suivant" et "Précédent"

lundi 1 novembre 2004 à 14:20:28 | Code pour les boutons "Suivant" et "Précédent"

lemagicien

Bonjour à tous.

J'ai une Form avec 2 boutons et 13 frames nomées Etape1 à Etape13.

j'ai trouvé 2 façon de faire pour que lorsque l'on clic sur le bouton suivant, on passe d'une frame à l'autre.

Si vous trouvez un méthode plus simple, plus rapide je suis preneur.

merci


1er méthode (avec des if):


Private Sub Suivant_Click()

If Etape1.Visible = True Then

Precedent.Enabled = True
Etape1.Visible = False
Etape2.Visible = True

ElseIf Etape2.Visible = True Then

Etape2.Visible = False
Etape3.Visible = True

ElseIf Etape3.Visible = True Then

Etape3.Visible = False
Etape4.Visible = True

ElseIf Etape3.Visible = True Then

Etape3.Visible = False
Etape4.Visible = True

ElseIf Etape4.Visible = True Then

Etape4.Visible = False
Etape5.Visible = True

ElseIf Etape5.Visible = True Then

Etape5.Visible = False
Etape6.Visible = True

ElseIf Etape6.Visible = True Then

Etape6.Visible = False
Etape7.Visible = True

ElseIf Etape7.Visible = True Then

Etape7.Visible = False
Etape8.Visible = True

ElseIf Etape8.Visible = True Then

Etape8.Visible = False
Etape9.Visible = True

ElseIf Etape9.Visible = True Then

Etape9.Visible = False
Etape10.Visible = True

ElseIf Etape10.Visible = True Then

Etape10.Visible = False
Etape11.Visible = True

ElseIf Etape11.Visible = True Then

Etape11.Visible = False
Etape12.Visible = True

ElseIf Etape12.Visible = True Then

Etape12.Visible = False
Etape13.Visible = True
Suivant.Enabled = False

End If

End sub


2eme méthode (avec salect case):


Public intCompteur as integer

Private Sub Form_Load()

intCompteur = 1
Precedent.Enabled = False

Etape1.Visible = True
Etape2.Visible = False
Etape3.Visible = False
Etape4.Visible = False
Etape5.Visible = False
Etape6.Visible = False
Etape7.Visible = False
Etape8.Visible = False
Etape9.Visible = False
Etape10.Visible = False
Etape11.Visible = False
Etape12.Visible = False
Etape13.Visible = False

End Sub


Private Sub Suivant_Click()

Select Case intCompteur

Case 1
Precedent.Enabled = True
Etape1.Visible = False
Etape2.Visible = True
intCompteur = intCompteur + 1
Case 2
Etape2.Visible = False
Etape3.Visible = True
intCompteur = intCompteur + 1
Case 3
Etape3.Visible = False
Etape4.Visible = True
intCompteur = intCompteur + 1
Case 4
Etape4.Visible = False
Etape5.Visible = True
intCompteur = intCompteur + 1
Case 5
Etape5.Visible = False
Etape6.Visible = True
intCompteur = intCompteur + 1
Case 6
Etape6.Visible = False
Etape7.Visible = True
intCompteur = intCompteur + 1
Case 7
Etape7.Visible = False
Etape8.Visible = True
intCompteur = intCompteur + 1
Case 8
Etape8.Visible = False
Etape9.Visible = True
intCompteur = intCompteur + 1
Case 9
Etape9.Visible = False
Etape10.Visible = True
intCompteur = intCompteur + 1
Case 10
Etape10.Visible = False
Etape11.Visible = True
intCompteur = intCompteur + 1
Case 11
Etape11.Visible = False
Etape12.Visible = True
intCompteur = intCompteur + 1
Case 12
Etape12.Visible = False
Etape13.Visible = True
Suivant.Enabled = False
intCompteur = intCompteur + 1
End Select

End Sub



pour le bouton precedent c'est +/- la même chose


Lemagicien
lundi 1 novembre 2004 à 14:43:06 | Re : Code pour les boutons "Suivant" et "Précédent"

pluplu

Utilise un SSTAB ce serai à mon avis beaucoup plus fonctionnel
Pascal Laurençon
lundi 1 novembre 2004 à 19:25:14 | Re : Code pour les boutons "Suivant" et "Précédent"

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Utilise l'instruction Iif si tu veut raccourcir ton code.
_______________________________________

DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
lundi 1 novembre 2004 à 22:24:32 | Re : Code pour les boutons "Suivant" et "Précédent"

lemagicien

pluplu pourais tu me dire ce qu'est SSTAB?

merci
Lemagicien
mardi 2 novembre 2004 à 06:48:04 | Re : Code pour les boutons "Suivant" et "Précédent"

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Le contrôle SSTab permet d'avoir des onglets sur une feuille pour avoir un aspect plus intuitif de multi page.

Mais cela ne te dispensera pas tout tes tests !
_______________________________________

DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
mardi 2 novembre 2004 à 08:00:36 | Re : Code pour les boutons "Suivant" et "Précédent"

crenaud76

Moi je commencerais par fair eun groupe de Frame nommée Etape(1) Etape(2) etc ...
Ensuite j'utiliserais une variable qui serait incrémenter par le bouton suivant et décrémenter par le bouton Précédent, avec une petite fonction qui affiche la frame Etape(i) correspondante !! une quinsaine de ligne de code en tout !!

L'avantage, c'est que tu es 2 ou 1 000 étapes, il n'y aura pas une ligne de code supplémentaire

Christophe R.
mardi 2 novembre 2004 à 12:04:04 | Re : Code pour les boutons "Suivant" et "Précédent"

pluplu

Je ne connais pas l'application que tu fais, et je ne sais pas dire si s'est mieux de mettre un contrôle à onglet pour faire ce que tu veux, mais le contrôle SSTAB te permet d'exploiter pas mal d'événements qui te font economiser du code.
Pascal Laurençon
mardi 2 novembre 2004 à 12:37:55 | Re : Code pour les boutons "Suivant" et "Précédent"

lemagicien

crenaud76 ta methode je l'utilise justement dans la 2eme methode (voir plus haut).

Mais le SSTAB ne convient pas pour mon application car je dois m'assurer que l'utilisateur a bien entré toutes les données dans la frame et qu'elles sont convorme avant de passer a l etape suivante.

Il n'existe pas de moyen d incrémenté un controle?
Ou peut etre de créer une procédure générale qui réduirait mon code?

une idée:

Peut etre faire une fonction qui retourne le nom (ou le numero) de la frame qui a sa prorieté Visible = true, vu qu il n'y a qu une seule frame qui est true a la fois.

Mais cela ne reduira pas de bcp le nombre de ligne.


Lemagicien
mardi 2 novembre 2004 à 12:55:37 | Re : Code pour les boutons "Suivant" et "Précédent"

crenaud76

Comme je le disais créée un groupe de controle avec tes frame Etape !!
Le code du bouton "suivant " sera alors simplement ceci


Etape(intcompteur).visible = False
intCompteur = intCompteur+1
If intCompteur <= IndexDernierFrame Then
Etape(intCompteur).visible = True
Else
' Faire ce qu tu veux lors du click sur "Suivant"
' sur la derniere étape
Endif

LE code pour le bouton "Précédent" sera quasi identique :
Remplacer l'incrémentation par une décrémentation et dans le test ,s'assurer que intCompteur est bien >= à l'indice du 1er frame
Je compte 7 lignes de code par bouton ! Une bonne économie non ?

Christophe R.
mardi 2 novembre 2004 à 15:31:24 | Re : Code pour les boutons "Suivant" et "Précédent"

lemagicien

Merci bcp je v tester ca
Lemagicien


Cette discussion est classée dans : case, true, visible, false, intcompteur


Répondre à ce message

Sujets en rapport avec ce message

tabstrip comment ca fonctionne ??? [ par max44 ] Slt les jeunes bon ben ca fait un bout de temps que je cherche et que je ne trouve pas alors comment ca fonctionne cette merde j'ai mis des frame et j Ecrire plus simplement !! [ par Etienne ] Comment peut-on écrire plus simplement ce code :Private Sub Command1 click()C1.Visible = FalseC2.Visible = FalseC3.Visible = FalseC4.Visible = FalseC5 Problème de raffraichissement graphique [ par kaira008 ] Salut a tous,Voila j'ai fais un petit programme pour afficher des valeurs provenant d'un convertisseur analogique numérique et de les enregistrer dans Nom de variable dynamique [ par sharkus ] Salut à tous,Je voudrais savoir comment faire ceci :J'ai plusieurs controles (label) que je veux afficher ou cacher en fonction d'une variable globale Nom de variable dynamique [ par sharkus ] Salut à tous,Je voudrais savoir comment faire ceci :J'ai plusieurs controles (label) que je veux afficher ou cacher en fonction d'une variable globale Nom de variable dynamique [ par sharkus ] Salut à tous,Je voudrais savoir comment faire ceci :J'ai plusieurs controles (label) que je veux afficher ou cacher en fonction d'une variable globale Nom de variable dynamique [ par sharkus ] Salut à tous,Je voudrais savoir comment faire ceci :J'ai plusieurs controles (label) que je veux afficher ou cacher en fonction d'une variable globale Nom de variable dynamique [ par sharkus ] Salut à tous,Je voudrais savoir comment faire ceci :J'ai plusieurs contrôles (label) que je veux afficher ou cacher en fonction d'une variable globale Nom de variable dynamique [ par sharkus ] Salut à tous,Je voudrais savoir comment faire ceci :J'ai plusieurs contrôles (label) que je veux afficher ou cacher en fonction d'une variable globale Workbook_Open ne fonctionne pas correctement avec Excel [ par jybse ] Bonjour à tous,J'ai une macro Workbook_Open() qui marche lorsque j'ouvre mon classeur pour la première fois dans une session Excel, mais si je ferme m


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 7,800 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales