Jak se vrátit do menu – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Jak se vrátit do menu – C / C++ – Fórum – Programujte.comJak se vrátit do menu – C / C++ – Fórum – Programujte.com

 

Dfire0
Duch
28. 10. 2010   #1
-
0
-

ahoj,mám takovej problém ,dělám hru a tam je menu nastavení apod. já když dám nastavení a nastavím si barvu,zvuky a tak,tak se chcu vrátit zase do menu a pak si tu hru zahrát ale já nevím jak se mám do toho menu vrátit,jak to mám napsat?

Nahlásit jako SPAM
IP: 213.19.38.–
KIIV
~ Moderátor
+43
God of flame
28. 10. 2010   #2
-
0
-

promin kristalova koule zrovna odmita fungovat..

dela se to bud cyklem a stavovym automatem nebo navratem z funkce pro submenu..
tezko rict jak to mas udelany..

ostatne znis jako typickej zacatecnik co si vzal ponekud velke sousto

Nahlásit jako SPAM
IP: 94.142.234.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Dfire0
Duch
28. 10. 2010   #3
-
0
-

udělal sem na rychlo takovou ukazku: (Až se vám hra spustí napište 3 a enter)

#include <cstdlib>

#include <iostream>
#include <windows.h>
using namespace std;

int main(int argc, char *argv[])
{
HANDLE btx;
btx = GetStdHandle(STD_OUTPUT_HANDLE);
HANDLE hOut;
COORD NewSBSize;
SMALL_RECT DisplayArea = {0, 0, 0, 0};
hOut = GetStdHandle(STD_OUTPUT_HANDLE);
NewSBSize = GetLargestConsoleWindowSize(hOut);
SetConsoleScreenBufferSize(hOut,NewSBSize);
DisplayArea.Right = NewSBSize.X -1;
DisplayArea.Bottom = NewSBSize.Y -1;
SetConsoleWindowInfo(hOut,TRUE, &DisplayArea);
char buf[512];
GetConsoleTitle(buf, sizeof buf);
HWND hw = FindWindow(NULL, buf);
ShowWindow(hw, SW_SHOWMAXIMIZED);
int vyber=0;
int vyber1=0;
int beep1=175;
int beep2=400;
int cislo=0;
int maxcislo=10;
// menu//
SetConsoleTextAttribute(hOut,BACKGROUND_GREEN |BACKGROUND_INTENSITY);
cout<<" Hra \n\a";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
SetConsoleTextAttribute(hOut,BACKGROUND_BLUE |BACKGROUND_INTENSITY);
cout<<" MENU: \n\n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<" 1 - hrat hru: \n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<" 2 - ukaz minuly skore: \n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<" 3 - nastav hru: \n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<" 4 - ukonci hru: \n";
SetConsoleTextAttribute(hOut,FOREGROUND_GREEN);
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<"Napis cislo:";
SetConsoleTextAttribute(hOut,FOREGROUND_GREEN);
cin>>vyber;
if(vyber==4)
{
cout<<"hra bude ukoncena za:\n";
Sleep(200);
cout<<"5\n\a";
Sleep(400);
cout<<"4\n\a";
Sleep(400);
cout<<"3\n\a";
Sleep(400);
cout<<"2\n\a";
Sleep(400);
cout<<"1\n\a";
Sleep(400);
cout<<"0\n\a";
Sleep(400);
cout<<"hra ukoncena";
return EXIT_SUCCESS;
}
if (vyber==3)
{
system("cls");
SetConsoleTextAttribute(hOut,BACKGROUND_GREEN |BACKGROUND_INTENSITY);
cout<<" Hra \n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
SetConsoleTextAttribute(hOut,BACKGROUND_BLUE |BACKGROUND_INTENSITY);
cout<<" NASTAVENI: \n\n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<" 1 - NASTAVENI ZVUKU \n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<"Napis cislo:";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
cin>>vyber1;
if (vyber1==1)
{
cout<<"napis prvni cislo zvuku:";
cin>>beep1;
cout<<"napis druhe cislo zvuku:";
cin>>beep2;
cout<<"zvuk= Beep("<<beep1<<","<<beep2<<");\n";
Sleep(200);
Beep(beep1,beep2);
cout<<"zvuk je ulozen\n";
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<"ZDE ALE NEVIM JAK ABY SE PROGRAM DOSTAL ZASE DO MENU\n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
}
}

if (vyber==2)
{
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<"zde zatim nic neni\n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);
}
if (vyber==1)
{
system("CLS");
SetConsoleTextAttribute(hOut,BACKGROUND_RED |BACKGROUND_INTENSITY);
cout<<"zde bude hra\n";
SetConsoleTextAttribute(hOut,FOREGROUND_RED);



}
system("PAUSE");
return EXIT_SUCCESS;
}

Nahlásit jako SPAM
IP: 213.19.38.–
KIIV
~ Moderátor
+43
God of flame
28. 10. 2010   #4
-
0
-

no jestli se mi nejakym zahadnym zpusobem podarilo prokousat tim silenym odsazovanim spravne, tak cyklus je to co potrebujes

Nahlásit jako SPAM
IP: 94.142.234.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 128 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý