成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺析Swing項(xiàng)目的開發(fā)

開發(fā) 后端
本文介紹對于Swing項(xiàng)目來說,沒有一個(gè)好的命名規(guī)范,特別是在多人參加開發(fā),那將是很槽糕的,Swing中有大量的組件用起來也很麻煩。

關(guān)于Swing項(xiàng)目開發(fā)淺論

由于工作最近接手一個(gè)Swing項(xiàng)目,開發(fā)周期為一年,也算是不大不小的項(xiàng)目,而且項(xiàng)目由我來負(fù)責(zé),(*^__^*) 嘻嘻……,我將我開發(fā)與管理的心得寫下,歡迎各位高手和前輩批評指正。
項(xiàng)目開發(fā)前的準(zhǔn)備:

a:首先對工具的現(xiàn)在,eclispe,netbeans,jb等,對于eclipse我們需要裝一個(gè)插件swt-designer ,netbeans可以直接開發(fā),sun公司為我們做好了,需要說的是eclipse不支持動態(tài)布局,但是將netbeans下的項(xiàng)目import到 eclipse下是可以運(yùn)行的。

b:對于Swing項(xiàng)目來說,沒有一個(gè)好的命名規(guī)范,特別是在多人參加開發(fā),那將是很槽糕的,Swing中有大量的組件用起來也很麻煩,這里我寫一個(gè)簡單例子,比如,JTextField txtFieldName, JTextArea txtBlog,等,這樣可以便于開發(fā)和交流。

c:對于工具的確定,netbeans做界面的開發(fā)比較好的選擇但是對于后臺的開發(fā)就顯弱勢了。在這里我選擇eclipse作后臺開發(fā),***將開發(fā)好的程序打jar文件***再導(dǎo)入netbeans中。

項(xiàng)目開發(fā)的相關(guān)設(shè)計(jì)

對于Swing做界面來說,并不是我們想象的那么容易,比如說我們在netbeans中畫好了所有的界面,在你打開界面的源文件時(shí)你會發(fā)現(xiàn)這個(gè)文件很龐大,可能有上萬行代碼或者更多,當(dāng)你讀這個(gè)代碼時(shí)也許會感覺茫然的哦。甚至有砸電腦的想法,當(dāng)維護(hù)的人員看到這樣的代碼,我們是可以想象當(dāng)時(shí)的情景,還有,在Swing中也有很多復(fù)雜的事件,對我們開發(fā)人員的本身也是一種挑戰(zhàn),我們必須在上萬行代碼中翻來找去,有沒有什么好的辦法來解決了。其實(shí)是有的。

我們開發(fā)其實(shí)是面對組件開發(fā),然后將各個(gè)組件綜合在一起就成了我們所需要的軟件,當(dāng)我們開發(fā)中肯定會遇到這樣或者那樣的
JPane ,JFrom JTable等,我們可以將一個(gè)個(gè)的jpane,jfrom jtable 重新組合中我們自己的組件以便復(fù)用,***我們再這些組件綜合在主要的Pane中下面的例子是我用netbeans開發(fā)的:

  1. package singlepane;  
  2.  
  3. import org.jdesktop.application.Action;  
  4. import org.jdesktop.application.ResourceMap;  
  5. import org.jdesktop.application.SingleFrameApplication;  
  6. import org.jdesktop.application.FrameView;  
  7. import org.jdesktop.application.TaskMonitor;  
  8. import java.awt.event.ActionEvent;  
  9. import java.awt.event.ActionListener;  
  10. import javax.swing.Timer;  
  11. import javax.swing.Icon;  
  12. import javax.swing.JDialog;  
  13. import javax.swing.JFrame;  
  14. import org.flybird.plat.SingleJpane;  
  15.  
  16. /**  
  17. * The application's main frame.  
  18. */  
  19. public class SinglePaneView extends FrameView  
  20. {  
  21.  
  22. public SinglePaneView(SingleFrameApplication app) {  
  23. super(app);  
  24.  
  25. initComponents();  
  26. }  
  27.  
  28. /** This method is called from within the constructor to  
  29.  * initialize the form.  
  30.  * WARNING: Do NOT modify this code. The content of this method is  
  31.  * always regenerated by the Form Editor.  
  32.  */  
  33. // <editor-fold defaultstate="collapsed" desc="Generated Code"> 
  34. private void initComponents() {  
  35.  
  36. mainPanel = new javax.swing.JPanel();  
  37. mainPabbedPane = new javax.swing.JTabbedPane();  
  38. this.singleJpane = new SingleJpane();  
  39. savePanel = new javax.swing.JPanel();  
  40.  
  41. mainPanel.setName("mainPanel"); // NOI18N  
  42.  
  43. mainPabbedPane.setName("mainPabbedPane"); // NOI18N  
  44.  
  45. savePanel.setName("savePanel"); // NOI18N  
  46.  
  47. org.jdesktop.layout.GroupLayout savePanelLayout = new org.jdesktop.layout.GroupLayout(savePanel);  
  48. savePanel.setLayout(savePanelLayout);  
  49. savePanelLayout.setHorizontalGroup(  
  50. savePanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)  
  51. .add(0, 371, Short.MAX_VALUE)  
  52. );  
  53. savePanelLayout.setVerticalGroup(  
  54. savePanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)  
  55. .add(0, 273, Short.MAX_VALUE)  
  56. );  
  57.  
  58. org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(singlepane.SinglePaneApp.class).getContext().getResourceMap(SinglePaneView.class);  
  59. mainPabbedPane.addTab(resourceMap.getString("savePanel.TabConstraints.tabTitle"), savePanel); // NOI18N  
  60. mainPabbedPane.addTab("single", this.singleJpane);  
  61.  
  62. org.jdesktop.layout.GroupLayout mainPanelLayout = new org.jdesktop.layout.GroupLayout(mainPanel);  
  63. mainPanel.setLayout(mainPanelLayout);  
  64. mainPanelLayout.setHorizontalGroup(  
  65. mainPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)  
  66. .add(mainPanelLayout.createSequentialGroup()  
  67. .add(mainPabbedPane, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 376, Short.MAX_VALUE)  
  68. .add(24, 24, 24))  
  69. );  
  70. mainPanelLayout.setVerticalGroup(  
  71. mainPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)  
  72. .add(org.jdesktop.layout.GroupLayout.TRAILING, mainPanelLayout.createSequentialGroup()  
  73. .add(20, 20, 20)  
  74. .add(mainPabbedPane, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 300, Short.MAX_VALUE))  
  75. );  
  76.  
  77. setComponent(mainPanel);  
  78. }// </editor-fold> 
  79.  
  80. // Variables declaration - do not modify   
  81. private javax.swing.JTabbedPane mainPabbedPane;  
  82. private javax.swing.JPanel mainPanel;  
  83. private javax.swing.JPanel savePanel;  
  84. // End of variables declaration   
  85. private SingleJpane singleJpane;  
  86.  
  87. }  

【編輯推薦】

  1. 淺析Swing線程包括內(nèi)容
  2. AWT或Swing混合環(huán)境中的事務(wù)處理
  3. Swing性能和Swing程序的學(xué)習(xí)
  4. 比較Swing和SWT的速度
  5. 淺談Swing構(gòu)造JList
責(zé)任編輯:佚名 來源: 機(jī)械工業(yè)出版社
相關(guān)推薦

2011-07-26 10:44:32

開發(fā)項(xiàng)目

2009-07-10 10:37:50

Swing Set示例

2009-06-26 17:48:38

JSF項(xiàng)目單元測試JSFUnit

2009-07-17 11:30:44

Swing Image

2009-07-10 14:20:01

AcceleratorJava Swing

2009-07-15 11:02:32

Swing組件

2009-07-15 16:03:26

Swing線程

2009-07-17 16:41:48

actionPerfoSwing

2009-07-16 17:01:09

Swing字符串

2009-07-15 13:46:26

Swing體系結(jié)構(gòu)

2009-07-10 17:24:07

Swing應(yīng)用程序

2009-07-15 10:06:54

Swing實(shí)現(xiàn)MDI

2009-07-15 17:33:08

Swing客戶端

2009-07-16 09:54:44

LookupEventSwing線程

2012-01-17 17:21:24

JavaSwing

2009-07-14 14:00:47

iData技術(shù)

2015-12-08 09:13:05

開發(fā)維護(hù)Java項(xiàng)目

2009-07-14 15:12:36

SwingSWT和AWT

2011-07-14 09:03:41

軟件開發(fā)項(xiàng)目

2014-04-23 13:45:40

iOS項(xiàng)目目錄結(jié)構(gòu)開發(fā)流程
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 欧美日韩一区在线 | 午夜影院在线观看 | 一区日韩 | 亚洲一视频 | 久草在线 | 午夜视频网| 999久久久久久久久 国产欧美在线观看 | 午夜视频一区 | 欧美精品久久久久久久久久 | 久久久久成人精品免费播放动漫 | a免费视频 | 久久99精品久久久 | 欧美a区| 免费av观看 | 日本a视频 | 午夜影院在线观看视频 | 国产高清自拍视频在线观看 | 国产精品久久久久久久久 | 男女羞羞视频免费看 | 午夜a√ | 中文字幕国产视频 | 干一干操一操 | 天天精品在线 | 一区二区日韩 | 天天综合永久 | 亚洲欧美一区二区三区视频 | 久久精品16 | 国产乱码精品1区2区3区 | 亚洲视频在线一区 | 国产精品久久久久久一区二区三区 | 国产精品一区二区不卡 | 久久久九九 | 久久久久久国产精品 | 中文一区二区 | 青青草免费在线视频 | 蜜桃视频一区二区三区 | 国产日韩欧美在线播放 | 久久大陆 | 色必久久| 精品视频在线免费观看 | 国产精品视频网址 |