国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

經驗分享:開發SWT應用兩點心得

2019-11-17 06:10:13
字體:
來源:轉載
供稿:網友
  原來沒有用過java做圖形界面的客戶端程序, 只是知道簡單的一些Java圖形編程的原理. 近日一用, 還確實和Window下的其他開發方法方法大有不同. 我沒有用過AWT, 也沒用過SWING, 在網上看到這不好,那不行. 遂直接用SWT, 反正也能跨平臺.

  1. Composite 刷新

  本來這看起來很簡單, 但在composite.open()后, 動態創建了幾個Control, 運行起來就是不能顯示, 反而原有的control可以dispose()掉. 納悶, 想不通. 記得在考SCJP時, AWT還是SWING需要調用redraw()重新更新畫布, 調用之, 還是無效。

  在網上也找不到動態創建控件的資源, 以為SWT不支持動態創建, 剛想~!@#$%^&*()_+. 絕望中看SWT_Example, 發現里面的LayoutExample居然實現了動態創建Button, 這不是俺要的嗎? 將代碼研讀一遍, 看看createDetailXXX, 沒有非凡的地方, 出去再看看調用, 使用了composite.layout(true) 方法. 回頭一試, 果然就是它.

  回頭一想, 可能設計者不想讓我們看到控件一個個的跳出來, 于是設計了這么一個方法, 讓控件一次刷屏.

  2. Control父組件

  Window程序動態創建一個控件時, 可以指定父控件為Null, 再調用父組件的add方法就可以加入到組件樹中. SWT似乎不能支持, 假如指定控件的Composite為Null, 將拋出異常. 必須指定一個父容器. 似乎不管3*7=21, 將shell作為其parent, 然后調用composite.setParent()改變其parent, 想一想, 不行. 假如使用setParent方法改變, 其shell的control列表同樣保留這個控件的拷貝, 而在dispose()時總有不干凈的干凈的感覺.

  原來搭好的框架, 因為必須指定parent composite而放棄.






發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 根河市| 棋牌| 澜沧| 马尔康县| 芒康县| 深水埗区| 丹江口市| 锦州市| 疏勒县| 扎兰屯市| 宣武区| 通城县| 万安县| 台北县| 南部县| 永济市| 江达县| 南丹县| 天镇县| 北碚区| 临西县| 墨玉县| 蓬溪县| 延川县| 尖扎县| 大余县| 新巴尔虎左旗| 鸡西市| 南部县| 廉江市| 宜春市| 班玛县| 庆城县| 奈曼旗| 怀来县| 讷河市| 长岭县| 巴青县| 抚顺市| 延边| 京山县|