2013-06-26 68 views
2

海蘭信息顯示控制檯,創建就像在windows窗體

在我的C#應用​​程序,我想打一個盒子中我可以把文本一行一行地顯示哪些應用目前正在做的信息。我試圖在互聯網上看,因爲這是一種與用戶交互的非常常見的方式,並且我確定有很多樣本。問題是,我不知道我應該怎麼稱呼這種文本框。

我希望你們明白我們在尋找什麼!

編輯1

我想要像在此安裝一個盒子。

image http://i1-win.softpedia-static.com/screenshots/Microsoft-Windows-Installer_1.png

+0

你可以有一個面板和顯示和隱藏它,甚至更好的創建一個有關與形式和ShowDialog的。 –

+1

你能發表一些代碼嗎? – michele

+0

可能是一個多行文本框,您AppendText() – Jonesopolis

回答

7

你可以使用一個多文本框,然後讓只和不可編輯的讀取。你只是追加行,並添加回車(\ r \ n)的

 TextBox1.text += "More text" + " \r\n"; 
+0

我是C++的人,所以我不確定它,但我懷疑它會去通過添加文本自動滾動到最後一行。可能還需要檢查用戶是否已經移動了滾動條,所以如果用戶想要閱讀某些內容,它不會自動滾動。 –

+0

這應該做的伎倆! @Edward剛剛檢查過它,它會自動向下滾動。 關於用戶閱讀某些我不擔心的應用程序,因爲每10行需要用戶交互,所以如果他們想要,他們將有足夠的時間向上滾動。 –

+1

非常感謝這個阿米特,有時你正在考慮一個非常困難的問題解決方案,當有一個非常簡單的問題時! –

1

我會給你一些提示,在其中您可以繼續研究,我不會給你提供完全的答案項目的工作代碼:

  1. 創建UI
  2. 這將是一個多行文本框
  3. 設置進度條什麼的代碼是做
  4. 設置一個循環來展示一下PROGR進步ess酒吧是通過

我會警告你,這是相對困難的,所以你需要進一步研究。

很多人假設進度條會自動顯示進度,這是不正確的。您可以採用兩種方法,將定時器放置在進度條上,或將其設置爲更新您的工作所經過的每行代碼。我希望你現在開始看看在你的代碼中這很難創建。但請記住,難度不是不可能喜歡學習!

+0

感謝您的回覆!幸運的是,我的應用程序中進度條並不太困難。 (我已經有這部分工作)。這是因爲應用程序將通過串行連接從外部PCB檢索信息。所以我只需要使用這段代碼在每一個接收到的行上更新它:progressBar1.PerformStep();但是,我可以看到,當你有不同類型的應用程序時,如何做到這一點可能是一種痛苦。 –

2

AmitApollo的回答很完美。

如果你擔心箱體的外觀,嘗試設置這些屬性:

  • Font:如果你想在控制檯看起來像DOS控制檯,請嘗試使用固定寬度的字體像索拉,或快遞新。
  • BackColor:將其設置爲灰色有一個盒子,看起來像一個在你的形象

另外,如果你想新日誌添加到框的開頭,使用

txtConsole.text = "Log's text" + " \r\n" + txtConsole.text; 

如果你想在添加一個新的框滾動到最後一行,check this post

相關問題