Czy jest sposób na osiągnięcie tego? Chcę przekazać jakiś tekst i mają pojawić się na linii wejściowej - zamiast „Imię i nazwisko: <kursora>” chcę „Imię i nazwisko: Domyślnie tekst edytowalny <kursor>”Console.ReadLine ("Domyślny tekst do edycji tekstem na linii")
Odpowiedz
Przypisz wartość domyślną do łańcucha znaków i zastąp ją, jeśli użytkownik wprowadził coś.
Dim name, s As String
name = "John"
Console.Write("Enter your Name (just hit <Enter> to keep ""{0}""): ", name)
s = Console.ReadLine()
If Trim(s) <> "" Then
name = s
End If
Console.WriteLine("Result = {0}", name)
Console.ReadKey()
OK, znalazłem. Przepraszam.
static void Main(string[] args)
{
Console.Write("Your editable text:");
SendKeys.SendWait("hello"); //hello text will be editable :)
Console.ReadLine();
}
To będzie miało interesujące efekty uboczne, gdy okno konsoli nie będzie miało ostrości: –
Tak, ale robię to tylko natychmiast śledzenie wiersza poleceń mojego programu Program (przynajmniej teraz) jest interaktywny z wiersza poleceń i zachowuje informacje o sesji między połączeniami, ostatecznie nie wróci do trybu dos .. –
Nie można znaleźć 'SendKeys'. – Shimmy
To może być duplikat: http://stackoverflow.com/q/1655318/1108263 –
myślę, że to moreso duplikatem http://stackoverflow.com/questions/7565415/edit-text-in -c-ostra-konsola-aplikacja – Slugart
To pytanie nie ma rozwiązania ... :( – nim