menue console

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
dayvid
Messages : 1242
Inscription : mer. 11/nov./2009 18:17
Localisation : Poitiers (Vienne)

menue console

Message par dayvid »

bonjour, voicie un code pour simuler un
menue sous la console ce code est libre

Code : Tout sélectionner

    
    ; crée par dieppedalle david le 18 mars 2010
    
    Procedure menu_1()
    ConsoleLocate(2, 1)
    ConsoleColor(12, 14)
    PrintN("Menue 1")
    ConsoleColor(12, 1)
    PrintN("  Menue 2")
    PrintN("  Menue 3")
    PrintN("  Menue 4")
    PrintN("  Menue 5")
    PrintN("  Menue 6")
    PrintN("  Menue 7")
    PrintN("  Menue 8")
    EndProcedure
    
    Procedure menu_2()
    ConsoleColor(12, 1)
    ConsoleLocate(2, 1)
    PrintN("Menue 1")
    ConsoleColor(12, 14)
    ConsoleLocate(2, 2)
    PrintN("Menue 2")
    ConsoleColor(12, 1)
    PrintN("  Menue 3")
    PrintN("  Menue 4")
    PrintN("  Menue 5")
    PrintN("  Menue 6")
    PrintN("  Menue 7")
    PrintN("  Menue 8")
    EndProcedure
    
    Procedure menu_3()
    ConsoleColor(12, 1)
    ConsoleLocate(2, 1)
    PrintN("Menue 1")
    PrintN("  Menue 2")
    ConsoleColor(12, 14)
    ConsoleLocate(2, 3)
    PrintN("Menue 3")
    ConsoleColor(12, 1)
    PrintN("  Menue 4")
    PrintN("  Menue 5")
    PrintN("  Menue 6")
    PrintN("  Menue 7")
    PrintN("  Menue 8")
    EndProcedure
    
    Procedure menu_4()
    ConsoleColor(12, 1)
    ConsoleLocate(2, 1)
    PrintN("Menue 1")
    PrintN("  Menue 2")
    PrintN("  Menue 3")
    ConsoleColor(12, 14)
    ConsoleLocate(2, 4)
    PrintN("Menue 4")
    ConsoleColor(12, 1)
    PrintN("  Menue 5")
    PrintN("  Menue 6")
    PrintN("  Menue 7")
    PrintN("  Menue 8")
    EndProcedure
    
    Procedure menu_5()
    ConsoleColor(12, 1)
    ConsoleLocate(2, 1)
    PrintN("Menue 1")
    PrintN("  Menue 2")
    PrintN("  Menue 3")
    PrintN("  Menue 4")
    ConsoleColor(12, 14)
    ConsoleLocate(2, 5)
    PrintN("Menue 5")
    ConsoleColor(12, 1)
    PrintN("  Menue 6")
    PrintN("  Menue 7")
    PrintN("  Menue 8")
    EndProcedure
    
    Procedure menu_6()
    ConsoleColor(12, 1)
    ConsoleLocate(2, 1)
    PrintN("Menue 1")
    PrintN("  Menue 2")
    PrintN("  Menue 3")
    PrintN("  Menue 4")
    PrintN("  Menue 5")
    ConsoleColor(12, 14)
    ConsoleLocate(2, 6)
    PrintN("Menue 6")
    ConsoleColor(12, 1)
    PrintN("  Menue 7")
    PrintN("  Menue 8")
    EndProcedure
    
    Procedure menu_7()
    ConsoleColor(12, 1)
    ConsoleLocate(2, 1)
    PrintN("Menue 1")
    PrintN("  Menue 2")
    PrintN("  Menue 3")
    PrintN("  Menue 4")
    PrintN("  Menue 5")
    PrintN("  Menue 6")
    ConsoleColor(12, 14)
    ConsoleLocate(2, 7)
    PrintN("Menue 7")
    ConsoleColor(12, 1)
    PrintN("  Menue 8")
    EndProcedure
    
    Procedure menu_8()
    ConsoleColor(12, 1)
    ConsoleLocate(2, 1)
    PrintN("Menue 1")
    PrintN("  Menue 2")
    PrintN("  Menue 3")
    PrintN("  Menue 4")
    PrintN("  Menue 5")
    PrintN("  Menue 6")
    PrintN("  Menue 7")
    ConsoleColor(12, 14)
    ConsoleLocate(2, 8)
    PrintN("Menue 8")
    ConsoleColor(12, 1)
    EndProcedure
    
    OpenConsole()
    EnableGraphicalConsole(1)
    ConsoleCursor(0)
    ConsoleColor(12, 1)
    ClearConsole()
    menu_1()
    menue = 1
    
    Repeat
    
    touche$ = Inkey()
    
    If menue <= 0
    menue = 8
    ElseIf menue >= 9
    menue = 1
    EndIf
    
    If changement = 1
    If menue = 1
    menu_1()
    changement = 0
    ElseIf menue = 2
    menu_2()
    changement = 0
    ElseIf menue = 3
    menu_3()
    changement = 0
    ElseIf menue = 4
    menu_4()
    changement = 0
    ElseIf menue = 5
    menu_5()
    changement = 0
    ElseIf menue = 6
    menu_6()
    changement = 0
    ElseIf menue = 7
    menu_7()
    changement = 0
    ElseIf menue = 8
    menu_8()
    changement = 0
    Else
    ; ne fait rien
    EndIf
    EndIf
    
    If touche$ <> ""
    
    ElseIf RawKey()
    
    If RawKey() = 38
    changement = 1
    menue - 1
    ElseIf RawKey() = 40
    changement = 1
    menue + 1
    EndIf
    
    EndIf
    
    Until RawKey() = 13
    
    ConsoleLocate(2, 12)
    
    ConsoleColor(15, 1)
    
    PrintN("tu as selectionner le menue numero " + Str(menue))
  
    Input()
La vie, C'est comme, Une boitte, De startis, On en voie, De toutes, Les couleurs !

Mon forum http://purebasic.forumphp3.com/index.php
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Re: menue console

Message par nico »

menu ne prend pas de 'e' à la fin

Sinon ça fonctionne!
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: menue console

Message par Ar-S »

Essaye de bien étudier les possibilités de boucles (For, Next), ça te permettra d'éviter bon nombre de répétitions.

Code : Tout sélectionner

Procedure menu_1()
      ConsoleLocate(2, 1)
      ConsoleColor(12, 14)
      PrintN("menu 1")
      ConsoleColor(12, 1)
      For i = 2 To 8
      PrintN("  menu "+Str(i))
      Next i
EndProcedure
C'est une toute petite modification de ta boucle mais sur le principe, tu peux optimiser ton code, et ton temps ;)
Bonne continuation. ça fait plaisir de te voir enfin poster du code.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
dayvid
Messages : 1242
Inscription : mer. 11/nov./2009 18:17
Localisation : Poitiers (Vienne)

Re: menue console

Message par dayvid »

oui merci mais vue certaire réponce et bien je ne sais pas si je vais continuer moi :|
La vie, C'est comme, Une boitte, De startis, On en voie, De toutes, Les couleurs !

Mon forum http://purebasic.forumphp3.com/index.php
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: menue console

Message par Ar-S »

C'est toi qui voit.
Tu as fait des efforts pour poster des codes et coté orthographe c'est déjà plus lisible.
Il te reste encore à rester zen lorsque tu bloques sur un problème. Je veux dire par là avant de poser ton soucis, faire des recherches
et étudier les tutos de la section débutant.
Une dernière petite chose irritante, lorsque tu dis "non mais ça je sais...." Et bien non tu ne sais pas forcément, sinon on te proposerai pas de codes différents.
Reste humble, zen et tu verras que tout se passera bien.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Répondre