2011-09-27 85 views
2

我想知道爲什麼swt很不方便使用。我們作爲程序員必須產生大量不必要的源代碼。這裏是一個例子。SWT需要多行代碼

Label label = new Label(parent, SWT.NONE); 
label.setText("labelname"); 

最低會是這樣的:

createLabel(parent, "labelname"); 

我建立一個convenients庫,我想知道是否有類似的東西,或者爲什麼SWT或者JFace的不走這種簡單的方法。有一些更多的構造函數可以覆蓋80%的編程任務嗎?

有更詳細的看看我做了什麼。
SWT: More Convenients Please

+0

等待 - 「它產生大量不必要的代碼」是什麼意思?您是否使用Eclipse之類的IDE? – Coffee

+0

看看我的網站,有一個更大的例子,使我的觀點清晰。 – strangeoptics

+0

要使用SWT,你需要編寫大量的代碼?什麼?你是否已經嘗試在Swing中編寫一些GUI? ;] – Sorceror

回答

0

字節的製作成本很低,而且我認爲辯論SWT「是如此不方便使用」 - 嗯,如果是自動生產它,怎麼是不方便?

我們的電腦如此之快,我們甚至無法察覺的差別......並保存時間是巨大的。

+1

對不起,英語是我的第二語言,我用一句「它會產生大量不必要的代碼」誤導你。我的看法是,我們作爲一名程序員必須產生這麼多不必要的代碼。我會解決我最初的問題。 – strangeoptics

+0

但我同意你的意見,一些更多的字節代碼並不重要。 – strangeoptics

1

據我所知,沒有這樣的通用庫。爲swt控件創建提供一些基本工廠支持的一個實例是JFace Form Widget。也看看這個org.eclipse.ui.forms.widgets.FormToolkit

從您的實現看來,你是假設GridLayout作爲默認布點的風格。除此之外,一個控件可能有許多佈局相關的數據,比如它的縮進(水平和垂直),跨度等等。這很難用工廠方法來覆蓋。

如果您不想爲編寫小部件編寫代碼而花費額外的精力,那麼您可以看看Visual editorhttp://www.eclipse.org/archived/

此外,蝕本身正在走向的模型驅動代(http://www.eclipse.org/e4/)。如果我們看到像SWT這樣的NetBeans UI設計師(通過使用eclipse建模框架和GEF爲我們的工具編寫了一個版本),這並不奇怪。

不過我建議你手工編寫的世俗布點代碼,因爲它會提高你的SWT理解。

+0

感謝您的回覆。當我有時間時,我會回答。可視化編輯器已存檔,是否意味着項目已停止? – strangeoptics

+0

@strangeoptics:看看這個SO鏈接http://stackoverflow.com/questions/319242/is-eclipse-visual-editor-dead。據我所知,該項目或多或少已經死亡。你也可以看看這個項目http://cloudgarden.com/jigloo/index.html。 – Favonius

2

我建議嘗試Google Window Builder Pro。它是Eclipse的一個插件,支持在SWT,Swing,RCP,JFace等GUI中進行圖形化開發。 GWB編寫指定GUI佈局的代碼,您只需編寫代碼來處理事件。

+0

是的窗口生成器是一個非常好的工具。我用我的博客中的簡單示例嘗試了它,它生成了我手寫的代碼。不幸的是,它不適用於我方便的課程。 – strangeoptics