Jeg vil lave en menu hvor man ikke behøver at bruge enter for at vælge. Da
jeg ikke kender andre metoder og skal kun bruge det på en win32 console har
jeg valgt at bruge getch() som modtager et tegn (og selv går vidre)
do
{
system("cls");
cout << "* Hovedmenu
*\n";
cout << " 1-> S\x9Bg p\x86 varenummer\n";
cout << " 5-> Afslut\n";
cout << "\nIndtast valg -> ";
valg=getch();
if (valg == '1')
{
Sqlobj.sogPaaVareNr();
}
while (valg != '5' );
-----
Classen::sogPaaVareNr()
{
char streng[30];
cin.getline(streng, 29, '\n' );
}
-----
Sådan noget ligende ser det ud. Det virker også fint første gang. Men når
jeg kommer tilbage fra søgpåvarenr() funktioen og igen taster 1 springer den
den cin.getline over i søgpåvarenr() funktioen!!! Altså den trykker enter
for mig på godt dansk.
Det er noget med at getch() får noget til at hænge i in bufferen , men jeg
kan jo ikke bruge cin.ignorer fx. Og cin.clear har ikke nogen effekt.
HJÆÆÆÆLP mig ;)
Jeg kan sgu ikke se hvad jeg gør galt. Er der alternativer til getch() men
som gør det samme? (nej vel?)
--
Anders
-----------------------------------
http://newbie.at/adkw
www.dct-team.dk