Console.CursorTop Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Zeilenposition des Cursors im Pufferbereich ab oder legt diese fest.
public:
static property int CursorTop { int get(); void set(int value); };
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static int CursorTop { get; set; }
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Runtime.Versioning.UnsupportedOSPlatform("android")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public static int CursorTop { get; set; }
public static int CursorTop { get; set; }
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.CursorTop : int with get, set
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("android")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("ios")>]
[<System.Runtime.Versioning.UnsupportedOSPlatform("tvos")>]
member this.CursorTop : int with get, set
member this.CursorTop : int with get, set
Public Shared Property CursorTop As Integer
Eigenschaftswert
Die aktuelle Position des Cursors in Zeilen.
- Attribute
Ausnahmen
Der Wert in einem Set-Vorgang ist kleiner als 0 (null).
- oder -
Der Wert in einem Set-Vorgang ist größer als oder gleich BufferHeight.
Der Benutzer verfügt nicht über die erforderlichen Berechtigung, um diese Aktion durchzuführen.
E/A-Fehler
Beispiele
In diesem Beispiel werden die CursorLeft Eigenschaften und sowie die Methoden und CursorTop SetCursorPosition Clear veranschaulicht. Im Beispiel wird der Cursor positioniert, der bestimmt, wo der nächste Schreibzugriff erfolgt, um ein Rechteck mit 5 Zeichen und 5 Zeichen zu zeichnen, indem eine Kombination aus Zeichenfolgen "+", "|" und "-" verwendet wird. Beachten Sie, dass das Rechteck mit einer Kombination aus anderen Zeichenfolgen mit weniger Schritten gezeichnet werden kann.
// This example demonstrates the
// Console.CursorLeft and
// Console.CursorTop properties, and the
// Console.SetCursorPosition and
// Console.Clear methods.
using namespace System;
int origRow;
int origCol;
void WriteAt( String^ s, int x, int y )
{
try
{
Console::SetCursorPosition( origCol + x, origRow + y );
Console::Write( s );
}
catch ( ArgumentOutOfRangeException^ e )
{
Console::Clear();
Console::WriteLine( e->Message );
}
}
int main()
{
// Clear the screen, then save the top and left coordinates.
Console::Clear();
origRow = Console::CursorTop;
origCol = Console::CursorLeft;
// Draw the left side of a 5x5 rectangle, from top to bottom.
WriteAt( "+", 0, 0 );
WriteAt( "|", 0, 1 );
WriteAt( "|", 0, 2 );
WriteAt( "|", 0, 3 );
WriteAt( "+", 0, 4 );
// Draw the bottom side, from left to right.
WriteAt( "-", 1, 4 ); // shortcut: WriteAt("---", 1, 4)
WriteAt( "-", 2, 4 ); // ...
WriteAt( "-", 3, 4 ); // ...
WriteAt( "+", 4, 4 );
// Draw the right side, from bottom to top.
WriteAt( "|", 4, 3 );
WriteAt( "|", 4, 2 );
WriteAt( "|", 4, 1 );
WriteAt( "+", 4, 0 );
// Draw the top side, from right to left.
WriteAt( "-", 3, 0 ); // shortcut: WriteAt("---", 1, 0)
WriteAt( "-", 2, 0 ); // ...
WriteAt( "-", 1, 0 ); // ...
//
WriteAt( "All done!", 0, 6 );
Console::WriteLine();
}
/*
This example produces the following results:
+---+
| |
| |
| |
+---+
All done!
*/
// This example demonstrates the
// Console.CursorLeft and
// Console.CursorTop properties, and the
// Console.SetCursorPosition and
// Console.Clear methods.
using System;
class Sample
{
protected static int origRow;
protected static int origCol;
protected static void WriteAt(string s, int x, int y)
{
try
{
Console.SetCursorPosition(origCol+x, origRow+y);
Console.Write(s);
}
catch (ArgumentOutOfRangeException e)
{
Console.Clear();
Console.WriteLine(e.Message);
}
}
public static void Main()
{
// Clear the screen, then save the top and left coordinates.
Console.Clear();
origRow = Console.CursorTop;
origCol = Console.CursorLeft;
// Draw the left side of a 5x5 rectangle, from top to bottom.
WriteAt("+", 0, 0);
WriteAt("|", 0, 1);
WriteAt("|", 0, 2);
WriteAt("|", 0, 3);
WriteAt("+", 0, 4);
// Draw the bottom side, from left to right.
WriteAt("-", 1, 4); // shortcut: WriteAt("---", 1, 4)
WriteAt("-", 2, 4); // ...
WriteAt("-", 3, 4); // ...
WriteAt("+", 4, 4);
// Draw the right side, from bottom to top.
WriteAt("|", 4, 3);
WriteAt("|", 4, 2);
WriteAt("|", 4, 1);
WriteAt("+", 4, 0);
// Draw the top side, from right to left.
WriteAt("-", 3, 0); // shortcut: WriteAt("---", 1, 0)
WriteAt("-", 2, 0); // ...
WriteAt("-", 1, 0); // ...
//
WriteAt("All done!", 0, 6);
Console.WriteLine();
}
}
/*
This example produces the following results:
+---+
| |
| |
| |
+---+
All done!
*/
// This example demonstrates the
// Console.CursorLeft and
// Console.CursorTop properties, and the
// Console.SetCursorPosition and
// Console.Clear methods.
open System
// Clear the screen, then save the top and left coordinates.
Console.Clear()
let origRow = Console.CursorTop
let origCol = Console.CursorLeft
let writeAt s x y =
try
Console.SetCursorPosition(origCol + x, origRow + y)
printfn $"%s{s}"
with :? ArgumentOutOfRangeException as e ->
Console.Clear()
printfn $"{e.Message}"
// Draw the left side of a 5x5 rectangle, from top to bottom.
writeAt "+" 0 0
writeAt "|" 0 1
writeAt "|" 0 2
writeAt "|" 0 3
writeAt "+" 0 4
// Draw the bottom side, from left to right.
writeAt "-" 1 4 // shortcut: writeAt "---", 1, 4)
writeAt "-" 2 4 // ...
writeAt "-" 3 4 // ...
writeAt "+" 4 4
// Draw the right side, from bottom to top.
writeAt "|" 4 3
writeAt "|" 4 2
writeAt "|" 4 1
writeAt "+" 4 0
// Draw the top side, from right to left.
writeAt "-" 3 0 // shortcut: writeAt "---", 1, 0)
writeAt "-" 2 0 // ...
writeAt "-" 1 0 // ...
writeAt "All done!" 0 6
printfn ""
// This example produces the following results:
//
// +---+
// | |
// | |
// | |
// +---+
//
// All done!
' This example demonstrates the
' Console.CursorLeft and
' Console.CursorTop properties, and the
' Console.SetCursorPosition and
' Console.Clear methods.
Class Sample
Protected Shared origRow As Integer
Protected Shared origCol As Integer
Protected Shared Sub WriteAt(s As String, x As Integer, y As Integer)
Try
Console.SetCursorPosition(origCol + x, origRow + y)
Console.Write(s)
Catch e As ArgumentOutOfRangeException
Console.Clear()
Console.WriteLine(e.Message)
End Try
End Sub
Public Shared Sub Main()
' Clear the screen, then save the top and left coordinates.
Console.Clear()
origRow = Console.CursorTop
origCol = Console.CursorLeft
' Draw the left side of a 5x5 rectangle, from top to bottom.
WriteAt("+", 0, 0)
WriteAt("|", 0, 1)
WriteAt("|", 0, 2)
WriteAt("|", 0, 3)
WriteAt("+", 0, 4)
' Draw the bottom side, from left to right.
WriteAt("-", 1, 4) ' shortcut: WriteAt("---", 1, 4)
WriteAt("-", 2, 4) ' ...
WriteAt("-", 3, 4) ' ...
WriteAt("+", 4, 4)
' Draw the right side, from bottom to top.
WriteAt("|", 4, 3)
WriteAt("|", 4, 2)
WriteAt("|", 4, 1)
WriteAt("+", 4, 0)
' Draw the top side, from right to left.
WriteAt("-", 3, 0) ' shortcut: WriteAt("---", 1, 0)
WriteAt("-", 2, 0) ' ...
WriteAt("-", 1, 0) ' ...
'
WriteAt("All done!", 0, 6)
Console.WriteLine()
End Sub
End Class
'
'This example produces the following results:
'
'+---+
'| |
'| |
'| |
'+---+
'
'All done!
'