Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[C++] Menu - wybierane strzałkami.


Rekomendowane odpowiedzi

Opublikowano

Witam, chciałbym napisać w c++ menu wybierane strzałkami. Patrzyłem na innych forach, znalazłem, ale było to na nie podstawowych bibliotekach c++. Chodzi mi o proste napisanie tego menu z biblioteka conio.h i o wytłumaczenie kodu. Z góry dziękuję.

Opublikowano

Funkcja getch() conio.h po prostu zwraca kod przycisku wciśniętego przez użytkownika. Myślę, że na tej stronie jest dobrze objaśnione:

http://cpp0x.pl/kursy/Kurs-C++/Obsluga-klawiatury-za-pomoca-conio-h/320


Pomagam w projektach dotyczących programowania (C++/C/Java/C#/inne). Jak masz jakiś problem, napisz do mnie, wspólnie poszukamy rozwiązania ;).

Opublikowano

#include <iostream>
#include <conio.h>
#include <cstdlib>
int main()
{
   const size_t items = 5; //ilosc tekstow w menu
   char* texts[items] = {"ASDAGSADGSFDSAH", "DFFJDSTHADRGDTH", "DUPA", "YJK&^TASFUTRU", "SFHTRYKTK&"}; //teksty do menu
   int choice = 0, key;//domyslny wybor to 0, key bedzie w petli potrzebny do wczytywania klawiszy
   do
   {
    system("cls");//tutaj mozesz sobie wrzucic jakies lepsze czysszczenie ekranu, ja to pisze pogladowo
    for(int i = 0; i<items; std::cout << "> " + ((choice!=i)), std::cout << texts[i++] << '\n'); //wypisanie poszczegolnych pozycji, jesli numer pozycji == wyborowi to dodawane jest "> " przed wpis
    key = getch(); //pobranie klawisza
    choice+=(key==80&&choice<items-1)-(key==72&&choice>0); //zmiana wyboru według wcisnietego klawisza, to zrobiłem tak nieczytelnie specjalnie, pomysl choc troche
	    //80 KEY_DOWN, 72 KEY_UP
   }while(key!=13); //13 ENTER
   std::cout << "Wybrales " << choice;
   return 0;
}

pewnie o to ci chodzi.

Kod do ładnych nie należy i nie uczy jakoś dobrych nawyków, ale pisałem na szybko, wybaczcie

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...