锁定老帖子 主题:我也来个原创swing,手写代码
精华帖 (0) :: 良好帖 (2) :: 新手帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2010-12-27
最后修改:2010-12-27
这两天才有时间登陆je,好几个月没来了,不是没空,是不敢来,也没来看,不发贴,只是百度的时候偶尔跳进来。。 前几个月发了些贴,被人贬得一文不值,我也懒得发了,省得找喷!现在大家都是GET,不SET了,哈哈。。我说的实话
这几天看了几个贴,SWING好像火了,不知道是不是真的,我也发两个贴。。
刚好刚才看了一个兄弟的一个“计算器”,手写的,哈哈,同类人啊,我也喜欢手写,结合IDE,很快的。当然不是可视化。前不久学习MYBATIS,写了个SPRING+MYBATIS+SWING的小软件,功能不是很全,就叫DEMO吧,连的MYSQL数据库,感觉还不错,今天冒着被拍砖的危险,发出来让大家看看,不好不要人身攻击啊!我算是怕了!
上图:
部分代码:
package com.finmanage.swing.dialog; import java.awt.BorderLayout; import java.awt.Rectangle; import java.awt.event.ActionEvent; import java.util.List; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; import javax.swing.JTextField; import com.finmanage.bussines.model.Kind; import com.finmanage.bussines.service.FacadeService; import com.finmanage.swing.frame.BaseInternalFrame; public class FinanceNew extends BaseInternalFrame{ private static final long serialVersionUID = -8607149290281591829L; private static FinanceNew finNew; private FacadeService facadeService=(FacadeService)appContext.getBean("facadeService"); private JPanel panel; private JLabel lab_img; private JLabel lab_kind; private JComboBox com_kind; private JLabel lab_money; private JTextField txt_money; private JLabel lab_time; private JTextField txt_time; private JLabel lab_desc; private JTextArea area_desc; private JScrollPane jsp; private JButton btn_save; private void initResource(){ panel=new JPanel(); lab_img=new JLabel(new ImageIcon(this.getClass().getResource("/com/finmanage/swing/img/fin_new.gif"))); lab_kind=new JLabel("类 别"); com_kind=new JComboBox(getKindNameList().split(",")); lab_money=new JLabel("金 额"); txt_money=new JTextField(); lab_time=new JLabel("时 间"); txt_time=new JTextField(); lab_desc=new JLabel("描 述"); area_desc=new JTextArea(); jsp=new JScrollPane(area_desc); btn_save=new JButton("保存"); } private void setBound(){ panel.setBounds(0,0,400,400); lab_img.setBounds(new Rectangle(220,6,146,172)); lab_kind.setBounds(new Rectangle(40,60,50,22)); com_kind.setBounds(new Rectangle(90,60,110,22)); lab_money.setBounds(new Rectangle(40,100,50,22)); txt_money.setBounds(new Rectangle(90,100,110,22)); lab_time.setBounds(new Rectangle(40,140,50,22)); txt_time.setBounds(new Rectangle(90,140,110,22)); lab_desc.setBounds(new Rectangle(40,190,50,22)); jsp.setBounds(new Rectangle(90,180,230,90)); btn_save.setBounds(new Rectangle(90,290,70,25)); } public void initGUI(){ this.initResource(); this.setBound(); this.setTitle("新增资金"); this.setLayout(new BorderLayout()); this.add(panel,BorderLayout.CENTER); panel.setLayout(null); panel.add(lab_img); panel.add(lab_kind); panel.add(com_kind); panel.add(lab_money); panel.add(txt_money); panel.add(lab_time); panel.add(txt_time); panel.add(lab_desc); panel.add(jsp); panel.add(btn_save); this.setMaximizable(false); this.setIconifiable(true); this.setClosable(true); this.setSize(400, 400); this.setLocation(250, 35); } private String getKindNameList(){ String args=""; List<Kind> kindList=facadeService.getAllKind(); for(Kind k:kindList){ args+=k.getName()+","; } return args; } public void actionPerformed(ActionEvent e) { // Object obj=(Object)e.getSource(); // if(obj==jb){ // // } } public FinanceNew(){ //show be private this.initGUI(); } public static FinanceNew getInstance(){ if(null==finNew){ finNew=new FinanceNew(); } return finNew; } public static void main(String[] args){//just fro test new FinanceNew(); } }
后来代码做了调整,构造private了,组件全部用的单例来实现的,换了饥饿模式,按钮全部用的“组合”来实现的,看“过鸭子模式”的朋友应该知道怎么做。代码就不发了 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-12-28
很好啊,一直想学学,就是没耐性
|
|
返回顶楼 | |
发表时间:2010-12-28
最后修改:2010-12-28
弱弱的问一下,SWING现在还有很多人用吗?貌似CS结构,用JAVA做UI岂不是很蹩脚.
|
|
返回顶楼 | |
发表时间:2010-12-28
哈哈,同道中人,我从刚出学校赚到第一笔钱就开始记账,不是小气,是想知道到底钱是怎么赚来的,又是怎么被花出去的,有利于分析那些钱该花,那些钱不该花。
不过我没做界面,数据就一xml文件,每次添加就是了,搞个界面录入还麻烦。 数据显示也没做,做了一大堆统计图表,我觉得那样更直观。 |
|
返回顶楼 | |
发表时间:2010-12-28
难度在哪里???
|
|
返回顶楼 | |
发表时间:2010-12-28
我还以为lz做了个mac的look&feel。。。
|
|
返回顶楼 | |
发表时间:2010-12-28
还不错。不在被打击中成长,便在被打击中逃跑。
|
|
返回顶楼 | |
发表时间:2010-12-28
yangguo 写道 还不错。不在被打击中成长,便在被打击中逃跑。
我喜欢 |
|
返回顶楼 | |
发表时间:2010-12-29
最近也在关注JE的SWING,自己开始慢慢地喜欢SWING了,不知LZ能否把源码发出来与大家一起分享下,在此感谢。
|
|
返回顶楼 | |
发表时间:2010-12-29
支持lz,其实swing 相当不错。成功案例非常多,大家不要人云亦云。
|
|
返回顶楼 | |