2012-11-06 142 views
0

我正在研究開發一個類似於hackRUN或上行鏈路的網絡安全文本遊戲,但是我沒有使用GUI編程的經驗,我懷疑我家人中的任何人都想學習如何製作和運行.cpp文件。所以我需要創建一個類似於Linux或Windows「cmd」的自定義命令行的GUI。該地區是否有任何資源可用?如何爲C++創建一個命令行模擬器GUI

+4

您是在談論一個模仿命令行界面外觀的GUI或可模仿GUI特定方面的命令行界面? –

+0

另外,您的家人不必編譯源代碼來運行程序嗎?你總是可以給他們的二進制文件... –

+0

是的,你可以通過Visual Studio很容易地做到這一點,如果你只想讓它成爲Windows,那麼我想看看的下一個最好的東西是GTK +,它是跨平臺的,有點更難使用 – pyCthon

回答

1

您可以創建一個文本框控件,它是整個窗口的大小,並對其進行自定義以使其看起來像控制檯。例如,將背景設置爲黑色,將字母顏色設置爲白色等。

如何創建該文本框取決於您使用的是哪個UI框架。對於C++,可以使用MFC或託管的WinForms,也可以使用WPF在C#中創建UI部分,並使用C++/CLI作爲C++和C#之間的橋樑。但是如果你想讓它在Windows和Linux上都可以使用,你可以使用wxWidgets或者Qt。

+0

謝謝,那是我開始的好地方。非常感激! – user1803796

+0

除非需要提供看起來像控制檯的GUI(而不是看起來像控制檯的控制檯),否則這將在任何真正的工作開始之前將很多GUI搞亂。無論如何,當你有一個工作的遊戲時,請儘量做到這一點。在你對我的回答的評論中,你提到這是一個學習C++的練習;與WinForms和MFC,你只會學習一些惱人的Windows API,不一定是C++本身。他們現在也不是最佳實踐,在線教程也不會出現在C++ 11中,這應該是您作爲初學者的起點。祝你好運。 –

0

可以通過讀取從用戶和分割線在第一空間(Python的/僞代碼*)模擬一個命令:

for line in raw_input(): 
    command,arguments = line.split(' ',1) 

例如read book是命令read用參數book

然後你可以使用你自己的邏輯來處理他們給出的命令。這種方法的優點是,您可以通過桌面上的快捷方式(無論是Linux還是Windows)和操作系統控制檯來支持交互來運行遊戲。

有一類叫做「文本冒險」遊戲的遊戲,當圖形有限或不存在時,這些遊戲很受歡迎,您可能會發現它們特別相關。考慮使用現有的文本冒險引擎,以便您可以專注於遊戲本身,而不是文本輸入和解析的機制。 *考慮用Python或類似的腳本語言編寫它,因爲它們提供了對字符串的直接處理等。你不可能需要C++的原始力量和複雜性,以用於命令行式的家庭遊戲。

+0

我很感謝你的建議,儘管我想用C++來做,主要是爲了提高我在這門語言的技能,因爲我在這個學期學習這門語言。感謝您的幫助 – user1803796

+0

@ user1803796:最好在問題中包含所有相關信息;這應該可以幫助你獲得最有用的答案。通常包括較少的信息將導致人們給出更一般的答案,就像這裏發生的那樣。儘管如此,從提示中逐行讀取命令的建議仍然存在,因爲替代方法是編寫一個GUI垃圾負載,只是爲了給您輸入相同的框。 –

相關問題