2010-03-18 42 views
3

對於我的學校項目,我想創建一個gui,其他人可以用它來創建一個gui。經過一些研究,我看到很多貴族建築師,但沒有看到我所尋找的任何東西。製作一個gui編輯器

但後來我發現用C#教程上here

我寧願創建用於Linux環境中,該GUI編輯器。

任何建議我應該從哪裏開始?我可以使用哪些工具?任何指南的鏈接?

任何幫助/方向將不勝感激。

P.S.我想補充一點,它只需要非常簡單。像幾個文本輸入字段和一些按鈕類型字段,用戶可以按所需順序排列。

回答

6

我建議您不要嘗試構建自己的GUI構建器。這是一項艱鉅的任務,你將無法完成學校項目。 C++是完全編譯的,這意味着它幾乎沒有任何功能可以讓人們爲其構建元工具(如GUI編輯器)。這主要是因爲C++沒有運行時反射(無論如何,本地)。除此之外,沒有「一個GUI工具包和/或範例來統治他們。」這使你的問題難以應付。

所以:我會推薦Qt,因爲它可以在很多平臺上工作,使用起來很簡單,而且很簡單。您還可以看看數十億其他GUI工具包,如Gtk +,Tk,FLTK,YAAF,GLUI,dlib,CLX ...

我知道這實際上並不回答這個問題。但是,我認爲作者並不知道他在自己面前所做的任務有多麼難以置信。

+0

我不知道。我認爲如果Gtk的XML格式有文檔記載(假設),那麼你可能會寫一些可行的假設一個gridbag佈局,並且只支持十幾個目標。 我不認爲這將是格萊德的質量,但它不應該是不可能的。 – 2010-03-18 21:24:22

+0

你應該看看格萊德花了多長時間來發展。它是由熟悉GTK和GType系統的人制作的。 – 2010-03-18 21:34:26

+1

+1:編寫GUI編輯器是一項艱鉅的任務。我最近需要一個可定製的GUI,因此我使用Qt Creator來創建.ui文件,這些文件可以作爲「小部件」導入到您自己的Qt程序中,以便隨意使用。 – DrAl 2010-03-18 21:43:22

0

我沒有任何確切的鏈接,但這裏有一個你可以做的例子。 Gtk可以通過使用名爲GtkBuilder的類來加載GUI。 Glade(通常的Gtk gui編輯器)支持將結果作爲GtkBuilder類讀取的XML文件輸出。

您的程序可能會輸出一個等效形成的GtkBuilder可讀的XML文件。

我不知道如何定位該XML有多困難。

0

如果你的目標是Linux環境,你應該使用GTK +或Qt。我認爲第一步是學習如何編寫gui,考慮到你正在編寫與高級語言不同的c/C++代碼,這需要花費一些時間。你不覺得學習編寫GUI程序和同時編寫GUI構建器有點太過分了。?首先,您應該掌握關於gui的基礎知識,然後繼續執行更難的項目。

這裏是一本關於gtk優秀書籍的鏈接。 (GTK +發展的​​基礎 - 安德魯·克勞斯)

http://books.google.com/books?id=L1BZZYRrqSgC&printsec=frontcover&dq=foundations+krause&hl=es&cd=1#v=onepage&q=&f=false

這裏是爲GTK +一個偉大的教程/菜譜。

http://zetcode.com/tutorials/gtktutorial/

的官方文檔上library.gnome。org

我最後的建議是一次學習一件事。

1

我建議首先實施它,像一個解釋器。從一個非常簡單的命令行工具開始,該命令行工具使用窗口(300,400,「window1」)和按鈕(50,100,「button1」)等命令,並將代碼(本機或任何其他GUI代碼)輸出到文件。目標應該是輸出一個可以運行的文件並顯示所設計的GUI。一旦你有了,建立一個使用命令行功能作爲後端的GUI。