日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

SWT中各种参数大全

發(fā)布時(shí)間:2024/6/21 综合教程 19 生活家
生活随笔 收集整理的這篇文章主要介紹了 SWT中各种参数大全 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1按鈕組件(Button)

(1)Button組件常用樣式

SWT.PUSH按鈕

SWT.CHECK多選按鈕

SWT.RADIO單選按鈕

SWT.ARROW箭頭按鈕

SWT.NONE默認(rèn)按鈕

SWT.CENTER文字居中與SWT.NONE

SWT.LEFT左對齊

SWT.RIGHT右對齊

SWT.BORDER深陷型按鈕

SWT.FLAT平面型按鈕

一個(gè)Button可以指定多個(gè)樣式,只要將指定的各個(gè)樣式用符號“|”連接起來即可

Buttonbt=newButton(shell,SWT.CHECK|SWT.BORDER|SWT.LEFT);

多選、深陷、左對齊

(2)Button組件的常用方法

setText(Stringstring),設(shè)置組件的標(biāo)簽文字

setBounds(intx,inty,intwidth,intheight);//設(shè)置組件的坐標(biāo)位置和大小

setEnabled(Booleanenabled);設(shè)置組件是否可用,默認(rèn)為true

setFont(Fontfont);設(shè)置文字的字體

setForeground(Colorcolor);設(shè)置前景色

setBackground(Colorcolor);設(shè)置背景色

setImage(Imageimage);設(shè)置顯示用的圖片

setSelection(Booleanselected);設(shè)置是否選中,默認(rèn)為false

setToolTipText(Stringstring);設(shè)置鼠標(biāo)停留在組件上是顯示的提示信息

2標(biāo)簽組件(Label)

(1)Label常見式樣

SWT.CENTER居中

SWT.RIGHT右對齊

SWT.LEFT左對齊

SWT.NONE默認(rèn)樣式

SWT.WRAP自動換行

SWT.BORDER深陷型

SWT.SEPARATOR分欄符,默認(rèn)為豎線分欄符

HORIZONTAL橫線分欄符

3文本框組件(Text)

(1)Text常見式樣

SWT.NONE默認(rèn)式樣

SWT.CENTER

SWT.RIGHT

SWT.LEFT

SWT.MULTI可以輸入多行,需回車換行

SWT.WRAP可以輸入多行,自動換行

SWT.PASSWORD密碼型,輸入字符顯示成“*”

SWT.BORDER深陷型

SWT.V_SCROLL垂直滾動條

SWT.H_SCROLL水平滾動條

4下拉框組件(Combo)

(1)Combo常見樣式

SWT.NONE默認(rèn)

SWT.READ_ONLY只讀

SWT.SIMPLE無需單擊下拉框,列表會一直顯示

(2)Combo下拉框常用方法

add(Stringstring)在Combo上添加一項(xiàng)

add(Stringstring,intindex)在Combo的第index(從0開始)項(xiàng)后插入一項(xiàng)

deselectAll()使Combo組件中的當(dāng)前選項(xiàng)為空

removeAll()將Combo中的所有選項(xiàng)清空

setItems(String[]items)將數(shù)組中的各項(xiàng)依次加入到Combo中

select(intindex)將Combo的第index+1項(xiàng)設(shè)置為當(dāng)前選擇項(xiàng)

5列表框組件(List)

(1)List常見樣式

SWT.NONE默認(rèn)樣式

SWT.V_SCROLL帶垂直滾動條

SWT.MULTI允許復(fù)選

SWT.SINGLE允許單選

(2)常用方法

List和Combo組件的方法是一樣的,但由于List可選擇多項(xiàng),而Combo只能選擇一項(xiàng)

,所以List沒有g(shù)etText()方法,List的取值使用getSelection(),返回一個(gè)String

數(shù)組。

6菜單(Menu,MenuItem)

菜單(Menu、MenuItem)是常用的SWT組件,Menu是一個(gè)菜單欄,同時(shí)也是一個(gè)容器

,可以容納菜單項(xiàng)(MenuItem)

(1)Menu樣式

SWT.BAR菜單欄,用于主菜單

SWT.DROP_DOWN下拉菜單,用于子菜單

SWT.POP_UP鼠標(biāo)右鍵彈出菜單

(2)MenuItem式樣

SWT.CASCADE有子菜單的菜單項(xiàng)

SWT.CHECK選中后前面顯示一個(gè)小勾

SWT.PUSH普通型菜單

SWT.RADIO選中后前面顯示一個(gè)圓點(diǎn)

SWT.SEPARATOR分隔符

(3)建立菜單一般步驟

①首先建立一個(gè)菜單欄,需要用到SWT.BAR屬性

MenumainMunu=newMenu(shell,SWT.BAR);

②在窗體中指定需要顯示的菜單欄

shell.setMenuBar(mainMenu);

③創(chuàng)建頂級菜單項(xiàng),需要使用SWT.CASCADE屬性

MenuItemfileItem=newMenuItem(mainMenu,SWT.CASCADE);

fileItem.setText("file&F");

④創(chuàng)建與頂級菜單項(xiàng)相關(guān)的下拉式菜單

MenufileMenu=newMenu(shell,SWT.DROP_DOWN);

⑤將頂級菜單項(xiàng)與下拉菜單關(guān)聯(lián)

fileItem.setMenu(fileMenu);

二級菜單的建立只需要重復(fù)③~⑤即可

容器類

1面板(Composite)

(1)Composite常用方法

getLayout()獲得布局管理器

getLayoutData()得到布局?jǐn)?shù)據(jù)

getParent()得到容納該容器的父容器

getShell()得到容納該容器的Shell

layout()將容器上的組件重新布局,相當(dāng)于刷新

2分組框(Group)

Group是Composite的子類,所以兩者用法基本相同。主要區(qū)別是Group顯示有一個(gè)方框,且方

框線上還可以顯示說明文字

3選項(xiàng)卡(TabFolder、TabItem)

選項(xiàng)卡包括一個(gè)選項(xiàng)卡(TabFolder類)和一個(gè)選項(xiàng)頁(TabItem類),TabFolder是容器,可

以容納其它容器和組件,但TabItem不是容器,可以把它看成是一個(gè)選項(xiàng)標(biāo)簽,TabFolder通過

TabItem來對其中的組件進(jìn)行控制。每一個(gè)TabItem用setControl()來控制一個(gè)界面組件。

布局管理器

1充滿式布局(FillLayout)

FillLayout是最簡單的布局管理器,它把組件按一行或一列充滿整個(gè)容器,并強(qiáng)制組件的大小一致。

一般組件高度和最高組件相同,寬度與最寬組件相同。FillLayout不能折行,不能設(shè)置邊界距離和間距。

如果容器中只有一個(gè)組件,則該組件會充滿整個(gè)容器。

(1)構(gòu)造方法

FillLayout()創(chuàng)建按一行充滿容器的對象。

FillLayout(inttype)創(chuàng)建按指定類型充滿容器的對象,type有:SWT.HORIZONTAL(行)

SWT.VERTICAL(列)

(2)常用屬性

inttype指定組件充滿容器的類型

FillLayout.type=SWT.VERTICAL或SWT.HORIZONTAL;

2行式布局(RowLayout)

RowLayout可以是組件折行顯示,可以設(shè)置邊界距離和間距。另外,還可以對每個(gè)組件通過setLayoutData()

方法設(shè)置RowData對象。RowData用來設(shè)置組件大小。

(1)構(gòu)造方法

RowLayout()創(chuàng)建按行放置組件的對象

RowLayout(inttype)創(chuàng)建按指定類型放置組件的對象。type:SWT.HORIZONTALSWT.VERTICAL

(2)常用屬性

intmarginWidth組件距容器邊緣的寬度(像素),默認(rèn)為0

intmarginHeight組件距容器邊緣的高度(像素),默認(rèn)為0

intmarginTop組件距容器上邊緣的距離(像素),默認(rèn)為3

intmarginBottom組件距容器下邊緣的距離(像素),默認(rèn)為3

intspacing組件之間的距離,默認(rèn)值為3

booleanjustify如果該屬性為true,則組件間的距離隨容器的拉伸而變大,默認(rèn)值為false

booleanwrap如果該屬性為true,當(dāng)空間不足時(shí)會自動折行,默認(rèn)為true

booleanpack如果該屬性為true,組件大小為設(shè)定值;如果為false,則強(qiáng)制組件大小相同

默認(rèn)為true

inttyepSWT.HORIZONTAL(行)SWT.VERTICAL(列)

(2)RowData類

RowData稱為RowLayout的布局?jǐn)?shù)據(jù)類,可用于改變?nèi)萜髦薪M件外觀形狀,其構(gòu)造方法為

RowData(intwidth,intheight)

3網(wǎng)格式布局(GridLayout)

GridLayout是實(shí)用而且功能強(qiáng)大的標(biāo)準(zhǔn)布局,也是較為復(fù)雜的一種布局。這種布局把容器分成網(wǎng)格

,把組件放置在網(wǎng)格中。GridLayout有很多可配置屬性,和RowLayout一樣,也有專用的布局?jǐn)?shù)據(jù)類

GridData.GridLayout的構(gòu)造方法無參數(shù),但可以通過GridData和設(shè)置GridLayout屬性來設(shè)置組建的排列、

形狀、和位置。

(1)GridLayout屬性

intnumColumn設(shè)置容器的列數(shù),組件從左到右按列放置,當(dāng)組件數(shù)大于列數(shù)時(shí),下一個(gè)組件

將自動添加到新的一行

booleanmakeColumnsEqualWidth強(qiáng)制使列都具有相同的寬度,默認(rèn)為false

intmarginWidth設(shè)置組件與容器邊緣的水平距離,默認(rèn)值為5

intmarginHeight設(shè)置組件與容器邊緣的垂直高度,默認(rèn)值為5

inthorizontalSpacing設(shè)置列與列之間的間距,默認(rèn)為5

intverticalSpacing設(shè)置行與行之間的間隔,默認(rèn)為5

(2)布局?jǐn)?shù)據(jù)類(GridData類)

GridData是GridLayout專用的布局?jǐn)?shù)據(jù)類,用GridData可以構(gòu)建很多復(fù)雜的布局方式。

①構(gòu)造方法

GridData()創(chuàng)建一個(gè)屬性值為默認(rèn)值的對象

GridData(inttype)

②GridData常用類型

GridData.FILL通常與對象屬性horizontalAlignment和verticalAlignment配合使用,充滿對象

屬性指定空間。

GridData.FILL_HORIZONTAL水平充滿,

GridData.FILL_VERTICAL垂直充滿

GridData.FILL_BOTH雙向充滿

GridData.HORIZONTAL_ALIGN_BEGINNING水平靠在對齊

GridData.HORIZONTAL_ALIGN_END水平靠右對齊

GridData.HORIZONTAL_ALIGN_CENTER水平居中對齊

③GridData常有對象屬性如下:

inthorizontalSpan設(shè)置組件占用的列數(shù),默認(rèn)為1

intverticalSpan設(shè)置組件占用的行數(shù),默認(rèn)為1

horizontalAlignment設(shè)置組件對齊方式為水平方向

verticalAlignment設(shè)置組件對齊方式為垂直方向

grabExcessHorizontalSpace搶占額外水平空間

grabExcessVerticalSpace搶占額外垂直空間

horizontalAlignment和verticalAlignment可以取以下值:

GEGINNING開始(水平對齊時(shí)居左,垂直對齊時(shí)居上)

CENTER居中,默認(rèn)

END結(jié)束(水平對齊時(shí)居右,垂直對齊時(shí)居下)

FILL充滿

4表格式布局(FormLayout)

FormLayout是一種非常靈活、精確的布局方式,F(xiàn)ormData使其專用的布局?jǐn)?shù)據(jù)類。

此外,還增加了一個(gè)FormAttachment類。FormAttachment定義了組件的四邊與父容器

(Shell、Composite)的邊距,為保證組件在父容器中的相對位置不變,F(xiàn)ormAttachment

類用不同的構(gòu)造方法來實(shí)現(xiàn)組件的定位,用FormData和FormAttachment配合,可以創(chuàng)建復(fù)雜

的界面,而且當(dāng)主窗體大小改變時(shí),組件的相對位置能保持相對不變。

(1)FormLayout構(gòu)造函數(shù)

FormLayout();

(2)FormLayout的屬性

intmarginWidth//設(shè)置組件與容器邊緣的水平距離,默認(rèn)值為0

intmarginHeihgt//設(shè)置組件與容器邊緣的垂直距離,默認(rèn)為0

(3)FormData類

①FormData的構(gòu)造方法

FormData()

FormData(intwidth,intheight)設(shè)置組件的寬度和高度

②FormData的屬性

width設(shè)置組件的寬度

height設(shè)置組件的高度

top和FormAttachment配合設(shè)置組件底部和父容器底部的邊距

left和FormAttachment配合設(shè)置組件右邊和父容器右邊的邊框

如果FormData中的width和height設(shè)置的寬度和高度與FormAttachment設(shè)置的約束

發(fā)生沖突,則按照FormAttachment設(shè)置,width和height的設(shè)定值就不起作用了。

(3)FormAttachment類

Attachment的含義是附著、粘貼。FormAttachment類就是用來指定組件在父容器中粘貼的

位置。FormAttachment計(jì)算組件粘貼位置和組件大小的方法是依據(jù)下面的表達(dá)式:

y=ax+b

①FormatAttachment構(gòu)造方法

FormatAttachment()組件緊貼父容器的左邊緣和上邊緣,如果父容器設(shè)置了FormLayout屬

性marginWidth、marginHeight,則距父容器的上邊緣和左邊緣為其值。

FormatAttachment(Controlcontrol)以指定組件control為參照物

FormatAttachment(Controlcontrol,intoffset)以指定組件control為參照物,相對指定

組件偏移量為offset

FormatAttachment(Controlcontrol,intoffset,intalignment)對齊方式為alignment

SWT.TOPSWT.BOTTOMSWT.LEFTSWT.RIGHTSWT.CENTER

FormAttachment(intm,intn,intoffset)以組件相對與父容器寬度或高度的百分比(即斜率a)來給

組件定位,m為a的分子,n為分母,offset為偏移量

FormAttachment(intm,intoffer)n默認(rèn)為100

FormAttachment(intm)n默認(rèn)為100,offset默認(rèn)為0

SWT的常用事件

所有事件、監(jiān)聽器和適配器都放在包org.eclipse.swt.events中。

(1)SWT中常用事件如下:

①addMouseListener鼠標(biāo)監(jiān)聽器

mouseDown()

mouseUP()

mouseDoubleClick()

②addKeyListener按鍵監(jiān)聽器

keyPressed()

keyReleased()

③addSelectionListener組件選擇監(jiān)聽器

widgetSelected()

④addFocusListener焦點(diǎn)監(jiān)聽器

focusGained()得到焦點(diǎn)

focusLost()失去焦點(diǎn)

總結(jié)

以上是生活随笔為你收集整理的SWT中各种参数大全的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。