Wymyśliłem sobie dodać do programu wczytującego tekst, funkcję która łamie wczytywanie po zadanej liczbie linii i czeka na potwierdzenie by móc wczytywać dalej. No i działa jednak zależy mi na tym aby po wciśnięciu klawisza usuwał ostatnią linijkę (czyli prośbę o wciśnięcie klawisza)
Oto wycinki. Te z winapi są po prostu skopiowane gdyż jestem bardzo początkujący.
void gotoxy( int column, int line )
{
COORD coord;
coord.X = column;
coord.Y = line;
SetConsoleCursorPosition(
GetStdHandle( STD_OUTPUT_HANDLE ),
coord
);
}
int wherex()
{
CONSOLE_SCREEN_BUFFER_INFO csbi;
COORD result;
if (!GetConsoleScreenBufferInfo(
GetStdHandle( STD_OUTPUT_HANDLE ),
&csbi
))
return -1;
return result.X;
}
int wherey()
{
CONSOLE_SCREEN_BUFFER_INFO csbi;
COORD result;
if (!GetConsoleScreenBufferInfo(
GetStdHandle( STD_OUTPUT_HANDLE ),
&csbi
))
return -1;
return result.Y;
}
Tak miałaby wyglądać ta funkcja
void czekaj(){
cout<<"Naci\230nij enter... ";
cin.ignore();
cin.get();
gotoxy(0,wherey());
}
Przykład użycia
void info(){
int j=0;
string x;
ifstream info ( "Info.txt" , ifstream::in );
if(!info){
cout<<"Brak pliku. Poszed\210 i nie wr\242ci";
Sleep(1000);
main();
}
while (!info.eof())
{
getline(info,x);
if(j<30)
{
cout<< x <<endl;
j++;
}
else{
cout<< x <<endl;
czekaj();
j=0;
}
}
czekaj();
info.close();
}