Home > 工具編程 > 要做 Visual Studio 樣子的使用者介面? 用 DockPanel Suite 吧!

要做 Visual Studio 樣子的使用者介面? 用 DockPanel Suite 吧!

雖然引擎連1%完成度也沒有,今天開始做遊戲的編輯工具,或者應該說是做工具的原型,一切都當作是實驗吧。

DockPanel Suite 的 Sample Screenshot
(這是 DockPanel Suite 的 Sample,不是 Visual Studio 啊! )

之前已決定採用開源的 DockPanel Suite。它是一個 C# 開源的 .Net 程序庫,基本上做到 Visual Studio.Net 的視窗 docking 功能,包括 tabbed window、split window、float window、docking indicator、auto-hide、讀寫 XML 設定檔等等。我是看到 Cg Composer 的 DLL 才知道有這個 .Net 程序庫,後來也找不到更好的選擇。

入門 Tutorial

我暫時認為 DockPanel Suite 的唯一缺點是缺乏文檔,2.X 的版本沒有任何文檔。不過,它的 sample 程式很容易理解,可以很快就做到一些東西出來。這裡記錄一點要注意地方:

  1. 2.X 的源代碼是 Visual Studio 2005 版的 Project,但 upgrade 至 2008 完全沒有問題。
  2. 要把主要的 Form 的 IsMDIContainer 屬性設定為 true。
  3. 在這個 Form 裡加入 DockPanel 物件 (要用 Form Designer 加入這物件的話,可以在 VS2008 中按 Tools -> Choose Toolbox Items,在 .Net 頁面用 Browse 找 WeifenLuo.WinFormsUI.Docking.dll)。
  4. 內容的視窗要繼承自 DockContent,顯示該示窗時用 aDockingWindow.Show(dockPanel),那麼就會把aDockingWindow 放進 dockPanel。

結語

以前曾經想過在自己做的 C++ GUI Toolkit 上實現這樣的 Docking 功能,但後來還是沒有時間做。對於用開 Visual Studio 的 Programmer 來說,總覺得這樣的介面是最適合做開發遊戲的環境,不同的情況還可以把各種設定記錄下來就更方便。最後發現,想要的,別人已經做好了。也許會有一點失落,但這麼好的程序庫,可以節省很多時間,還是把省下的時間做一個好的工具,繼而做一個好的遊戲來。

P.S. 對長期用 C++ 的我來說,C# 的編譯速度真的快得無話可說。按 F5 直接編譯再執行 C# 程序簡直好像沒有編譯過一樣。工作上,只是執行一個 console 程序都可能要等半分鐘….. 這對我選擇了用 C# 做遊戲編輯工具的決定更有信心。

Comments:4

半路 08-04-09 (三) 15:56

我從前在使用 MFC 時也動過相似的念頭,想要製作個 docking panel 的功能出來,不過後來並沒有實行。用過了幾個程式編輯器,還是覺得 Visual Studio 的使用者介面無可比擬,如果遊戲編輯器也能如此直覺好用,對遊戲設計者來說應該會更便於使用。

目前也已經看到幾個使用 C# 開發的遊戲引擎,製作出類似於這種操作介面的遊戲編輯器。使用 C# 做為遊戲編輯工具的開發語言,可以說是越來越盛行的趨勢。當然,專案編譯速度的提升也是一個關鍵要素。XD

dennis 08-04-09 (三) 22:00

Besides being able to compile quickly, I think using C# for tools development is good also because C# has reflection supported which make many features much more easy to do.

Edwin 08-04-10 (四) 3:05

對,C# 開發GUI真的比C++方便百倍。
我們正在試Python 做相同的事,等我們完成再交流一下。

Hua 08-05-04 (日) 23:42

wxPython也有這些功能, 不敢說全部都支援, 想到的大部分都有. 一開始我也用MFC寫, 後來用wxPython後覺得比MFC好用太多了. 缺點是與C整合需要些工夫, 執行速度也比較慢.

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://miloyip.seezone.net/wp-trackback.php?p=62
Listed below are links to weblogs that reference
要做 Visual Studio 樣子的使用者介面? 用 DockPanel Suite 吧! from Milo的遊戲開發

Home > 工具編程 > 要做 Visual Studio 樣子的使用者介面? 用 DockPanel Suite 吧!

Search
Feeds
Meta

Return to page top