Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Viktigt!
Det här dokumentet beskriver konsolplattformsfunktioner som inte längre ingår i vår ekosystemöversikt. Vi rekommenderar inte att du använder det här innehållet i nya produkter, men vi kommer att fortsätta att stödja befintliga användningar på obestämd tid. Vår föredragna moderna lösning fokuserar på virtuella terminalsekvenser för maximal kompatibilitet i plattformsoberoende scenarier. Du hittar mer information om det här designbeslutet i vår klassiska konsol jämfört med det virtuella terminaldokumentet .
Konsolfönstret visar en del av den aktiva skärmbufferten. Varje skärmbuffert har en egen rektangel för aktuellt fönster som anger koordinaterna för de övre vänstra och nedre högra teckencellerna som ska visas i konsolfönstret. Om du vill fastställa den aktuella fönsterrektangeln för en skärmbuffert använder du GetConsoleScreenBufferInfo. När en skärmbuffert skapas finns det övre vänstra hörnet i fönstret i det övre vänstra hörnet av konsolskärmsbufferten vid (0,0).
Fönstrets rektangel kan ändras för att visa olika delar av konsolskärmsbufferten. Fönstrets rektangel för en skärmbuffert kan ändras i följande situationer:
När SetConsoleWindowInfo anropas för att ange en ny fönsterrektangel rullar den vyn för konsolskärmsbufferten genom att ändra positionen för fönstrets rektangel utan att ändra fönstrets storlek. Exempel på hur du bläddrar i fönstrets innehåll finns i Rulla en skärmbufferts fönster.
När du använder funktionen WriteFile för att skriva till en skärmbuffert med radbrytning i utdataläget slutpunkt (EOL) aktiverat, skiftar fönsterrektangeln automatiskt, så markören visas alltid.
När funktionen SetConsoleCursorPosition anger en ny markörposition som ligger utanför gränserna för den aktuella fönsterrektangeln, skiftar fönsterrektangeln automatiskt för att visa markören.
När användaren ändrar storleken på konsolfönstret eller använder fönstrets rullningslister kan fönsterrektangeln för den aktiva skärmbufferten ändras. Den här ändringen rapporteras inte som en fönsterändringshändelse i indatabufferten.
I var och en av dessa situationer skiftar fönsterrektangeln för att visa en annan del av konsolskärmsbufferten, men innehållet i konsolskärmsbufferten förblir i samma position. Följande situationer kan leda till att innehållet i konsolskärmsbufferten flyttas:
- När funktionen ScrollConsoleScreenBuffer anropas kopieras ett rektangulärt block från en del av en skärmbuffert till en annan.
- När du använder WriteFile för att skriva till en skärmbuffert med wrap i EOL-utdataläget aktiverat rullar konsolskärmsbuffertens innehåll automatiskt när slutet av konsolskärmsbufferten påträffas. Den här rullningen tar bort den översta raden i konsolskärmsbufferten.
ScrollConsoleScreenBuffer anger den konsolskärmsbuffertrektangel som flyttas och de nya övre vänstra koordinaterna som rektangeln kopieras till. Den här funktionen kan rulla en del eller hela innehållet i konsolskärmsbufferten.
Bilden visar en ScrollConsoleScreenBuffer-åtgärd som rullar hela innehållet i konsolskärmens buffert uppåt med flera rader. Innehållet i de översta raderna ignoreras och de nedre raderna fylls med ett angivet tecken och en angiven färg.
Effekterna av ScrollConsoleScreenBuffer kan begränsas genom att ange en valfri urklippsrektangel så att innehållet i konsolskärmsbufferten utanför urklippsrektangeln ändras. Effekten av urklipp är att skapa en underwindow (urklippsrektangeln) vars innehåll rullas utan att påverka resten av konsolskärmsbufferten. Ett exempel som använder ScrollConsoleScreenBuffer finns i Bläddra i innehållet i en skärmbuffert.