Astăzi am scris un program de consolă în C# care citește date dintr-o bază de date și le afișează. După rulare, ecranul clipește, programul se încheie, iar datele returnate de program nu pot fi văzute deloc. Cum să pui programul pe pauză după ce citești datele? Tocmai am adăugat o propoziție la final:
Console.Read();
Acum programul este suspendat. Dar când vrei să ieși din program, tot trebuie să apeși butonul enter. În loc de taste arbitrare, cum putem obține efectul în programele noastre comune de consolă? Credeam că e Console.Read(); Metoda este ok, dar rezultatul tot nu este bun. Am căutat pe Baidu, dar nu am reușit, însă nu mă așteptam să găsesc răspunsul la o întrebare atât de simplă (^_^ poate toată lumea este maeștri și nu poate întâlni astfel de probleme). Pot rezolva doar eu însumi, am încercat de multe ori cu metodele Read() și ReadLine(), și în cele din urmă am descoperit că Consola are o metodă ReadKey(), iar descrierea documentului este: "Apăsați o tastă de caracter sau funcție de utilizator", și există o suprasarcină: una nu are parametri, iar tasta apăsată este afișată în fereastra consolei; O altă formă are o interceptare a parametrului bool, care determină dacă tastele apăsate sunt afișate în fereastra consolei, true înseamnă că tastele apăsate nu sunt afișate și invers.
Console.Write("Apasă orice tastă pentru a ieși..."); Console.ReadKey(true);
Compilarea .............. ok! În sfârșit am făcut-o, am scris-o, sperând să ajut prieteni care au aceeași problemă. |