[英]Can I update C# console output in realtime without constantly writing to it?
我正在創建一個簡單的格斗游戲控制台應用程序,並且我的Player
對象上有一個health
屬性,該屬性在Fight
方法中更新。
我想知道是否可以在控制台中實時顯示健康變量,而無需調用多次更新控制台的方法。
這是我開始戰斗並顯示每個玩家的健康輸出的主要方法。
public static void StartFight(Player p1, Player p2) {
Console.Clear();
Title(" BATTLE ");
Console.WriteLine($"{p1.name} Health: {p1.health} ");
Console.WriteLine($"{p2.name} Health: {p2.health} ");
// Loop giving each player a chance to attack
// and block each turn until 1 dies
while (true) {
if (Fight(p1, p2)) {
Title(" GAME OVER! ");
PlayAgain();
break;
}
if (Fight(p2, p1)) {
Title(" GAME OVER! ");
PlayAgain();
break;
}
}
}
是否可以實時寫入控制台,以便我不必繼續執行Console.WriteLine($"{p1.name} Health: {p1.health} ");
?
否 - 如果您正在向控制台顯示,則無法在不多次調用方法來更新控制台的情況下實時更新 UI。
其他 UI 有辦法使用事件、綁定等來做到這一點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.