锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
1銆丒clipse涓璼wt鐨勯厤緗?br />寤鴻閰嶇疆錛歫dk1.4.2浠ュ強eclipse3.1
鍦ㄤ唬鐮佷腑璋冪敤swt鎺т歡涔嬪墠錛岄鍏堝緩绔嬩竴涓」鐩紝鐒跺悗閫夋嫨璇ラ」鐩殑properties -> Java Build Path錛屽皢standard Widget ToolKit鍔犲叆鍒癓ibrary欏靛綋涓傚涓嬪浘鎵紺猴細
聽鎺ヤ笅鏉ュ彲浠ュ緩绔嬬涓涓猠clipse灝忕▼搴忥紝鏂板緩涓涓猚lass錛屽茍涓斿湪璇lass鎵瀵瑰簲鐨勪唬鐮佷腑杈撳叆濡備笅紼嬪簭錛屽叾涓璸ackage浠ュ強class鍚嶇О鏍規嵁瀹為檯鎯呭喌鏉ョ‘瀹氬悕縐般?br />package mypakage;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.*;
/*瀵煎叆闇瑕佺殑綾誨簱*/
public class Myfrm1 {
public Myfrm1() {
super();
}
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
/*shell涓轟竴涓獥鍙e璞?/
Label label = new Label(shell, SWT.NONE);
label.setText("Hello, World!");聽 /*鍒涘緩涓涓爣絳懼璞″茍涓旇緗爣棰樻枃瀛?/
label.pack();
shell.pack();
shell.open();聽 /*鎵撳紑騫舵樉紺虹獥鍙?/
while(!shell.isDisposed())
if(!display.readAndDispatch())
聽聽聽 display.sleep();聽 /*鍦ㄧ獥鍙f病鏈夐攢姣佷箣鍓嶏紝鏄劇ず瀵硅薄涓鐩村浜庣瓑寰呯姸鎬?/
display.dispose();聽 /*鍚﹀垯錛岄攢姣佸璞★紝閲婃斁瀵硅薄鎵鍗犳嵁鐨勮祫婧?/
label.dispose();
}
}
榪愯涓婅堪浠g爜錛坮un -> debug -> swt application錛夊皢浜х敓濡備笅鎵紺虹殑涓涓獥鍙?
2銆乥utton鐨勪嬌鐢?br />鎸夐挳鍙兘鐨勭被鍨嬫湁寰堝錛屼緥濡傦細
SWT.BORDER聽 鍚湁杈規鐨勬寜閽?br />SWT.CHECK聽 澶嶉夋寜閽?br />SWT.PUSH聽 鏅氭寜閽?br />SWT.RADIO聽 鍗曢夋寜閽?br />3銆乀ext鐨勪嬌鐢?br />鏂囨湰妗嗙殑綾誨瀷涔熸湁寰堝縐嶉夋嫨錛屼緥濡傦細
SWT.BORDER 鍚湁杈規
SWT.READ_ONLY 鍙
涓嬪浘涓哄寘鍚寜閽互鍙婃枃鏈鐨勭獥鍙?br />璁捐涓婅堪紿楀彛鎵瀵瑰簲鐨勪唬鐮佷負錛?br />package mypakage;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.*;
import org.eclipse.swt.layout.*;
public class Myfrm1 {
public Myfrm1() {
super();
}
public static void main(String[] args) {
Display display = new Display( );
聽聽聽聽聽聽聽 Shell shell = new Shell(display);
聽聽聽聽聽聽聽 shell.setSize(300, 200);
聽聽聽聽聽聽聽 shell.setLayout(new RowLayout( ));
聽聽聽聽聽聽聽 shell.setText("Button Example");
聽聽聽聽聽聽聽 final Button button = new Button(shell, SWT.BORDER);
聽聽聽聽聽聽聽 button.setText("Click Me");
聽聽聽聽聽聽聽 final Text text = new Text(shell, SWT.BORDER);聽聽
聽聽聽聽聽聽聽 shell.open( );
聽聽聽聽聽聽聽 while(!shell.isDisposed( )) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if(!display.readAndDispatch( )) display.sleep( );
聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽 display.dispose( );
}
}
濡傛灉鎯沖鎺т歡鐨勪綅緗互鍙婂ぇ灝忚繘琛岀簿紜殑璁劇疆錛屽彲浠ヤ嬌鐢╯etBounds(x, y, width, height)鏂規硶鏉ュ彇浠hell.setLayout(new RowLayout( ))銆備緥濡傦細button.setBounds(80, 80, 90, 20);
button鐨勭洃鍚強浜嬩歡澶勭悊
瀵規寜閽崟鍑諱簨浠跺鐞嗙殑浠g爜錛?br />聽聽聽聽聽聽聽 button.addSelectionListener(new SelectionListener( )
聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 public void widgetSelected(SelectionEvent event)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 text.setText("No worries!");
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 public void widgetDefaultSelected(SelectionEvent event)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 text.setText("No worries!");
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽 });
灝嗕互涓婁唬鐮佸姞鍏ュ埌shell.open涔嬪墠錛屽綋鐐瑰嚮鎸夐挳鏃朵駭鐢熶互涓嬫晥鏋滐細
鍒嗘瀽錛氱敱浜庝負button鎸夐挳澧炲姞浜嗕竴涓洃鍚櫒錛屾寜閽椂鍒誨浜庤鈥滅洃鎺р濈殑鐘舵侊紝褰撴寜閽帶浠惰閫夋嫨錛堢偣鍑伙級鏃㈤夋嫨浜嬩歡鍙戠敓鏃訛紝瀵規枃鏈帶浠惰繘琛岃祴鍊尖漀o worries鈥濄?br />鏍規嵁鐩戝惉浜嬩歡鐨勫師鐞嗭紝璁捐濡備笅紼嬪簭錛岃紼嬪簭鑳藉鑾峰緱榧犳爣鐨刋鍧愭爣錛屾樉紺哄湪鏂囨湰妗嗕腑錛?br />package mypakage;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.*;
import org.eclipse.swt.layout.*;
public class Myfrm1 {
public Myfrm1() {
super();
}
public static void main(String[] args) {
Display display = new Display( );
聽聽聽聽聽聽聽 Shell shell = new Shell(display);
聽聽聽聽聽聽聽 shell.setSize(300, 200);
聽聽聽聽聽聽聽 shell.setLayout(new RowLayout( ));
聽聽聽聽聽聽聽 final Text text = new Text(shell, SWT.SHADOW_IN);
聽聽聽聽聽聽聽 shell.addMouseMoveListener(new MouseMoveListener( )
聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 public void mouseMove(MouseEvent e)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 Integer y=new Integer(e.x);聽 /*灝唜鍧愭爣杞崲涓篒nteger綾誨瀷鐨勫璞?/
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 text.setText(y.toString());
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽 });
聽聽聽聽聽聽聽 shell.open( );
聽聽聽聽聽聽聽 while(!shell.isDisposed( )) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if(!display.readAndDispatch( )) display.sleep( );
聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽 display.dispose( );
}
}
鐩戝惉鏂瑰紡錛?br />ControlListener 鐢ㄤ簬澶勭悊縐誨姩浠ュ強灝哄鍙樺寲
FocusListener 鐢ㄤ簬澶勭悊寰楀埌鐒︾偣浠ュ強澶卞幓鐒︾偣
KeyListener 澶勭悊鎸夐敭鐨勮緭鍏?/p>
MouseListener , MouseMoveListener, MouseTrackListener 瀵歸紶鏍囩殑鍔ㄤ綔榪涜澶勭悊
SelectionListener 澶勭悊鎺т歡鐨勯夋嫨琛屼負錛堝寘鎷寜閽殑鐐瑰嚮錛?/p>
娉ㄦ剰錛氱洃鍚柟寮忎笌鍏舵墍鑳藉澶勭悊鐨勪簨浠跺叿鏈変竴瀹氱殑鍏寵仈鎬э紝鏃㈢洃鍚柟寮忓喅瀹氫簡鎵鑳藉澶勭悊浜嬩歡鐨勭綾伙紝渚嬪錛?/p>
聽聽聽聽聽聽聽 shell.addMouseListener(new MouseListener( )
聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽 public void mouseMove(MouseEvent e)
聽聽聽聽聽聽聽聽聽聽 {text.setText("mousemove");}
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 public void mouseDoubleClick(MouseEvent e)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 {text.setText("mousedbclc");}
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 public void mouseDown(MouseEvent e)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 {}
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 public void mouseUp(MouseEvent e)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 {}
聽聽聽聽聽聽聽 });
浣犱細鍙戠幇鍦ㄩ紶鏍囩Щ鍔ㄦ椂錛宼ext.setText("mousemove");濮嬬粓涓嶈兘澶熸墽琛岋紱騫朵笖mouseDown銆乵ouseUp浜嬩歡涓嶈兘澶熺渷鐣ワ紝鍘熷洜灝卞湪浜嶮ouseListener鍙兘澶勭悊mouseDoubleClick銆乵ouseDown銆乵ouseUp涓夌被浜嬩歡錛岃屼笖榪欎笁綾諱簨浠朵笉鑳藉鍒嗙銆?br />3銆丩ist鎺т歡
List鎺т歡鐨勬牱寮忓寘鎷細
SWT.BORDER 鍚湁杈規
SWT.H_SCROLL 鍚湁姘村鉤婊氬姩鏉?/p>
SWT.V_SCROLL 鍚湁鍨傜洿婊氬姩鏉?/p>
SWT.SINGLE 鍏佽鍗曢?/p>
SWT.MULTI 鍏佽澶嶉?/p>
鑻ヨ鍒涘緩涓涓惈鏈変粠11涓厓绱犵殑List錛屽彲浠ラ氳繃浠ヤ笅浠g爜鏉ュ疄鐜?br />final List list = new List (shell, SWT.SINGLE);
for (int i=0;i<=10;i++)
聽聽 list.add("item"+i);
聽
浠ヤ笅瀹炰緥鑳藉鍒ゆ柇List鎺т歡涓墍閫夋嫨鐨勯夐」錛屽茍涓旇緭鍑烘樉紺哄湪鎺у埗鍙頒腑錛?br />package mypakage;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.*;
import org.eclipse.swt.layout.*;
public class Myfrm1 {
public Myfrm1() {
super();
}
public static void main(String[] args) {
聽聽聽聽聽聽聽 Display display = new Display ( );
聽聽聽聽聽聽聽 Shell shell = new Shell (display);
聽聽聽聽聽聽聽 shell.setText("List Example");
聽聽聽聽聽聽聽 shell.setSize(300, 200);
聽聽聽聽聽聽聽 shell.setLayout(new FillLayout(SWT.VERTICAL));
聽聽聽聽聽聽聽 final List list = new List (shell, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL);聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 for (int loopIndex = 0; loopIndex < 100; loopIndex++){
聽聽聽聽聽聽聽聽聽聽聽 list.add("Item " + loopIndex);
聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽 list.addSelectionListener(new SelectionListener( )
聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽 public void widgetSelected(SelectionEvent event)
聽聽聽聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 int聽 selections[] = list.getSelectionIndices ( );
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 String outText = "";
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 for (int loopIndex = 0; loopIndex < selections.length;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 loopIndex++) outText += selections[loopIndex] + " ";
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 System.out.println ("You selected: " + outText);
聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽 public void widgetDefaultSelected(SelectionEvent event)
聽聽聽聽聽聽聽聽聽聽 {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 int [] selections = list.getSelectionIndices ( );
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 String outText = "";
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 for (int loopIndex = 0; loopIndex < selections.length; loopIndex++)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 outText += selections[loopIndex] + " ";
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 System.out.println ("You selected: " + outText);
聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽 });
聽聽聽聽聽聽聽聽聽 shell.open ( );
聽聽聽聽聽聽聽聽聽 while (!shell.isDisposed ( )) {
聽聽聽聽聽聽聽聽聽聽聽聽聽 if (!display.readAndDispatch ( )) display.sleep ( );
聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽 display.dispose ( );
}
}
鏁堟灉鍥撅細
聽
You selected: 4 5 6 7 8 9 10
鍒嗘瀽錛歭ist.getSelectionIndices ( )鏂規硶灝嗕細鑾峰緱琚夋嫨欏圭洰鐨勯泦鍚堬紝 selections[]鎴栬匸] elections琛ㄧず鍔ㄦ佷竴緇存暟緇勩?/p>
4銆丮enu鎺т歡
寤虹珛鑿滃崟鐨勪竴鑸楠や負錛?br />1銆佸湪寤虹珛鑿滃崟鏃訛紝棣栧厛闇瑕佸緩绔嬩竴涓彍鍗曟爮錛岄渶瑕佷嬌鐢⊿WT.BAR灞炴?br />Menu menuBar = new Menu(shell, SWT.BAR);
2銆佸湪鑿滃崟鏍忕殑鍩虹涔嬩笂錛屽垱寤轟笅鎷夎彍鍗曠殑鎵瀵瑰簲鐨勯《綰ц彍鍗曢」錛岄渶瑕佷嬌鐢⊿WT.CASCADE灞炴?br />fileMenuHeader = new MenuItem(menuBar, SWT.CASCADE);
fileMenuHeader.setText("&File");
3銆佸緩绔嬩笌欏剁駭鑿滃崟欏圭浉鍏崇殑涓嬫媺寮忚彍鍗?br />dropMenu1 = new Menu(shell, SWT.DROP_DOWN);
4銆佸皢欏剁駭鑿滃崟欏逛笌涓嬫媺鑿滃崟鍏寵仈
MenuHeader1.setMenu(dropMenu1);
5銆佷負涓嬫媺鑿滃崟娣誨姞瀛愯彍鍗曢」
dropitem1= new MenuItem(dropMenu1, SWT.PUSH);
dropitem1.setText("open");
鈥?br />鈥?/p>
6銆佹渶鍚庯紝鍦ㄧ獥鍙d腑鎸囧畾闇瑕佹樉紺虹殑鑿滃崟鏍?br />shell.setMenuBar(menuBar);
聽
鑿滃崟鐨勭洃鍚強浜嬩歡
鍙傜収鎸夐挳鐨勭洃鍚互鍙婁簨浠訛紝璁捐濡備笅紼嬪簭錛屽綋鐐瑰嚮 File瀛愯彍鍗曚笅鐨勨渙pen鈥濇椂錛屽湪鏂囨湰妗嗕腑鏄劇ず鈥渃lick open menu!鈥?br />dropitem1.addSelectionListener(new SelectionListener()
聽聽 {
聽聽聽聽聽 public void widgetSelected(SelectionEvent event)
聽聽聽聽聽 {
聽聽聽聽聽 text.setText("click open menu!");
聽聽聽聽聽 }
聽聽聽聽聽 public void widgetDefaultSelected(SelectionEvent event)
聽聽聽聽聽 {
聽聽聽聽聽 text.setText("click open menu!");
聽聽聽聽聽 }
聽聽 });
聽
5銆佷嬌鐢ㄥ伐鍏鋒爮toobar
寤虹珛宸ュ叿鏍忓彲浠ラ氳繃濡備笅鏂瑰紡錛歍oolBar toolbar = new ToolBar(shell, SWT.NONE);
鍦ㄥ伐鍏鋒爮鐨勫熀紜涔嬩笂鍒涘緩宸ュ叿鏍忓瓙鎸夐挳錛屽茍涓旇緗瓙鎸夐挳鐨勬爣棰橈細
ToolItem item1 = new ToolItem(toolbar, SWT.PUSH);
item1.setText("item1");
渚嬪錛?br />聽聽聽聽聽聽聽 ToolBar toolbar = new ToolBar(shell, SWT.NONE);
聽聽聽聽聽聽聽 ToolItem item1 = new ToolItem(toolbar, SWT.PUSH);
聽聽聽聽聽聽聽 item1.setText("item1");
聽聽聽聽聽聽聽 ToolItem item2 = new ToolItem(toolbar, SWT.PUSH);
聽聽聽聽聽聽聽 item2.setText("item2");
聽
宸ュ叿鏍忕殑鐩戝惉鍙婁簨浠?br />瀹炰緥錛氬垱寤轟竴涓洃鍚璞★紝灝嗚鐩戝惉瀵硅薄搴旂敤浜庢瘡涓涓寜閽紝鏈緇堟潵鍒ゆ柇榧犳爣鐐瑰嚮鐨勬槸鍝竴涓寜閽紝鏁堟灉鍥懼涓嬨?br />聽聽聽聽聽聽聽聽聽聽聽 Listener listener = new Listener( ) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 public void handleEvent(Event event) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 ToolItem item =(ToolItem)event.widget;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 String string = item.getText( );
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 text.setText("You selected:" + string);聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽 };
聽聽聽聽聽聽聽聽聽聽聽 item1.addListener(SWT.Selection, listener);
聽聽聽聽聽聽聽聽聽聽聽 item2.addListener(SWT.Selection, listener);
聽聽聽聽聽聽聽聽聽聽聽 item3.addListener(SWT.Selection, listener);
item4.addListener(SWT.Selection, listener);
聽
6銆佹粴鍔ㄦ潯slider鐨勪嬌鐢?br />婊氬姩鏉″垎涓烘湁杈規銆佸瀭鐩淬佹按騫充笁縐嶇被鍨嬶紝鍒╃敤slider.setBounds鏂規硶鍙互鎸囧畾婊氬姩鏉℃墍鍦ㄧ殑浣嶇疆銆?br />婊氬姩鏉℃墍鑳藉澶勭悊浜嬩歡鐨勫寘鎷細
SWT.ARROW_DOWN 鍚戜笅鎴栧悜鍙蟲寜閽鐐瑰嚮
SWT.ARROW_UP 鍚戝乏鎴栧悜涓婃寜閽鐐瑰嚮
SWT.DRAG聽 婊戝潡鎸夐挳琚墭鍔?/p>
SWT.END 婊戝潡鍒拌揪緇堢偣
SWT.HOME 婊戝潡鍒拌揪璧風偣
SWT.PAGE_DOWN 涓嬫柟鎴栧彸渚х殑婊氬姩鏉¤鐐瑰嚮
SWT.PAGE_UP 涓婃柟鎴栧乏渚х殑婊氬姩鏉¤鐐瑰嚮
瀹炰緥錛氭牴鎹粦鍧楃殑浣嶇疆縐誨姩鎸夐挳浣嶇疆
聽聽聽聽聽聽聽 slider.addListener(SWT.Selection, new Listener( ) {
聽聽聽聽聽聽聽聽聽 public void handleEvent(Event event) {
聽聽聽聽聽聽聽聽聽聽聽 switch(event.detail) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 case SWT.ARROW_DOWN: button.setBounds(slider.getSelection(),0,20,10);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 case SWT.ARROW_UP:button.setBounds(slider.getSelection(),0,20,10);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 case SWT.DRAG:button.setBounds(slider.getSelection(),0,20,10);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 case SWT.END:button.setBounds(slider.getSelection(),0,20,10);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 case SWT.HOME:button.setBounds(slider.getSelection(),0,20,10);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 case SWT.PAGE_DOWN:button.setBounds(slider.getSelection(),0,20,10);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 case SWT.PAGE_UP:button.setBounds(slider.getSelection(),0,20,10);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽 }
});
聽
7銆佹爲褰㈡帶浠禩ree
鏍戝艦鎺т歡浣跨敤鐨勬柟娉曚負錛岄鍏堝垱寤轟竴涓猅ree綾誨瀷鐨勫璞★紝鍏舵鍦ㄨ瀵硅薄鐨勫熀紜涔嬩笂緇х畫鎵╁睍鑺傜偣錛屼互鍙婃墿灞曡妭鐐圭殑瀛愯妭鐐廣?br />final Tree聽 tree = new Tree(shell, SWT.BORDER);
鍙互鍒╃敤tree.setSize鏂規硶鏉ユ敼鍙樻爲褰㈡帶浠剁殑澶у皬銆傚湪鍒涘緩鑺傜偣鏃訛紝闇瑕佹寚鏄庤鑺傜偣鎵渚濊禆鐨勭埗鑺傜偣鐨勫悕縐幫紝濡俆reeItem item0 = new TreeItem(tree, 0);錛岄偅涔坕tem0灝嗘垚涓簍ree瀵硅薄涓殑0綰э紙欏剁駭錛夎妭鐐廣?br />濡備笅紼嬪簭灝嗗湪tree瀵硅薄鐨勫熀紜涔嬩笂浜х敓9涓妭鐐癸細
聽聽聽聽聽聽聽 final Tree tree = new Tree(shell, SWT.BORDER);
聽聽聽聽聽聽聽 tree.setSize(290, 290);
聽聽聽聽聽聽聽 for(int loopIndex1 = 2000; loopIndex1 <= 2008; loopIndex1++) {
聽聽聽聽聽聽聽聽聽聽聽 TreeItem item0 = new TreeItem(tree, 0);
聽聽聽聽聽聽聽聽聽聽聽 item0.setText("Year " + loopIndex1);
聽聽聽聽聽聽聽 }
聽
鍦ㄤ笂榪板疄渚嬬殑鍩虹涓婁負姣忎竴涓?綰ц妭鐐圭殑鍩虹涓婃墿灞曞嚭12涓妭鐐癸細
聽聽聽聽聽聽聽 for(int loopIndex1 = 2000; loopIndex1 <= 2008; loopIndex1++) {
聽聽聽聽聽聽聽聽聽聽聽 TreeItem item0 = new TreeItem(tree, 0);
聽聽聽聽聽聽聽聽聽聽聽 item0.setText("Year " + loopIndex1);
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽 for(int loopIndex2 = 1; loopIndex2 <= 12; loopIndex2++) {
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽 TreeItem item1 = new TreeItem(item0, 0);
聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽 item1.setText("Month " + loopIndex2);
聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽 }
聽
8銆佸璇濇dialog
瀵硅瘽妗嗘槸涓涓緷鎵樹簬涓葷獥浣撶殑瀛愮獥浣擄紝濡傚浘鎵紺恒?br />聽
渚嬪錛氬綋鍦ㄤ富紿椾綋涓偣鍑繪寜閽椂錛屽脊鍑轟竴涓璇濇dialog錛屽綋鍏抽棴瀵硅瘽妗嗘椂鎸夐挳鏄劇ず鈥渄ialog is disposed鈥?br />聽
聽聽聽聽聽聽聽 Display display = new Display( );
聽聽聽聽聽聽聽 final Shell shell = new Shell(display);
聽聽聽聽聽聽聽 shell.setSize(300, 200);
聽聽聽聽聽聽聽 shell.setText("main");
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 final Button opener = new Button(shell, SWT.PUSH);
聽聽聽聽聽聽聽 opener.setText("Click Me");
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 opener.setBounds(20, 20, 50, 25);
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 final Shell dialog = new Shell(shell, SWT.APPLICATION_MODAL |
聽聽聽聽聽聽聽聽聽聽聽 SWT.DIALOG_TRIM);
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 dialog.setText("dialog");
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 dialog.setBounds(10,10,50,60);
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 dialog.addDisposeListener(new DisposeListener(){
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 public void widgetDisposed(DisposeEvent e){
聽聽聽聽聽聽聽 opener.setText("dialog is disposed");
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽 });
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 Listener openerListener = new Listener( ) {
聽聽聽聽聽聽聽聽聽聽聽 public void handleEvent(Event event) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 dialog.open( );
聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽 };
聽聽聽聽聽聽聽 opener.addListener(SWT.Selection, openerListener);
聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 shell.open( );
聽聽聽聽聽聽聽
聽聽聽聽聽聽聽 while(!dialog.isDisposed( )) {
聽聽聽聽聽聽聽聽聽聽聽 if(!display.readAndDispatch( )) display.sleep( );
聽聽聽聽聽聽聽 }聽聽聽聽聽聽
聽聽聽聽聽聽聽 while (!shell.isDisposed( )) {
聽聽聽聽聽聽聽聽聽聽聽 if (!display.readAndDispatch( ))
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 display.sleep( );
聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽 display.dispose( );