国产探花免费观看_亚洲丰满少妇自慰呻吟_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而放棄.






發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 买车| 元朗区| 长丰县| 平武县| 岳阳市| 柯坪县| 尚志市| 肥乡县| 大同县| 云龙县| 遂川县| 金沙县| 绥德县| 长汀县| 长沙市| 九江市| 台南县| 南雄市| 合作市| 读书| 九龙城区| 白沙| 榆树市| 泗洪县| 惠安县| 利川市| 聂拉木县| 类乌齐县| 普定县| 南澳县| 故城县| 石河子市| 马龙县| 文登市| 历史| 永兴县| 民权县| 沅江市| 西平县| 定州市| 同心县|