寫(xiě)在開(kāi)始:
由于工作須要,做了一周時(shí)間的Rcp開(kāi)發(fā),發(fā)現由于Eclipse開(kāi)發(fā)方面的中文資料較少,對入門(mén)者來(lái)說(shuō)有些困難,
所以把自己一周的內容放上,共享給開(kāi)始學(xué)習Eclipse開(kāi)發(fā)的人
Eclipse開(kāi)發(fā)中有很多名詞: 插件開(kāi)發(fā) ,RCP ,SWT,Jface很容易讓人迷糊
做個(gè)大概的比喻,如果說(shuō)SWT是C++的話(huà) 那么JFace就像STL對SWT做了簡(jiǎn)單的封裝 Rcp就像MFC封裝更多
而插件開(kāi)發(fā)和Rcp唯一不同就使導出不同,一個(gè)導出成plug in,另一個(gè)導出成獨立運行的程序。其實(shí)沒(méi)有什么區別
好了,開(kāi)始第一個(gè)程序,從Hello world開(kāi)始。寫(xiě)到這個(gè)地方,再次崇拜一下第一個(gè)寫(xiě)Hello world的人。
真應改給他搬個(gè)什么普及教育之類(lèi)的獎項。
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
public class HelloSWT {
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
Label label = new Label(shell, SWT.CENTER);
label.setText("Hello, World");
label.setBounds(shell.getClientArea());
shell.open();
while (!shell.isDisposed()){
if (!display.readAndDispatch()){
display.sleep();
}
}
display.dispose();
}
}
首先介紹Display,打家都知到Swt是基于操做系統的,多大部分的控、 窗口都是調用系統的,所以得有一個(gè)東西
負責把java的消息轉變成系統消息,Display就是。
Shell可以簡(jiǎn)單理解成就是窗口
Label就是一個(gè)標簽了。
shell.open()顯視窗口
while (!shell.isDisposed()){
if (!display.readAndDispatch()){
display.sleep();
}
}
熟悉Windows下編程的人大概都知到,Windows的消息循環(huán)機制。
好了試著(zhù)運行一下這個(gè)程序,修改一下,找找感覺(jué)吧。
寫(xiě)到這里忽然想起自己沒(méi)有寫(xiě)如何配制SWT的開(kāi)發(fā)環(huán)境,對于新手來(lái)說(shuō)這個(gè)是重要的。
這里有一篇文章http://dev.yesky.com/409/2620409.shtml
如果鏈接失效的話(huà)google一下吧
說(shuō)明:
這個(gè)系列的文章是基于eclipse 3.2.1的,另外推薦一些學(xué)習的資料或者網(wǎng)站
首先:http://www.eclipseworld.org/bbs/
然後:在上邊的論壇里邊有一些前輩們寫(xiě)的教程,有些不錯值得一看
聯(lián)系客服