swing/swt可视化开发工具windowbuilder免费了

windowbuilder,也就是原来的SWT Designer。Google收购了Instantiations,把它的工具也重新免费发布了。
用过swt designer的人都知它是非常好用的swing/swt可视化开发工具,有了它,swing/swt也可以像visual studio一样拖拉控件写程序(虽然netbean也可以,不过没怎用),可惜是个收费产品,后来把改名为windowbuilder。不过Google把这个工具的开发公司Instantiations收购了,并把这个产品免费发布。Google收购Instantiations是为了给它的GWT设计开发工具,据说也是为了它的Anroid搞开发工具(......)。
安装地址:http://code.google.com/intl/zh-CN/webtoolkit/tools/download-wbpro.html
安装windowbuilder很方便,不过通过Eclipse的Update方式安装这个插件,eclipse的windowbuilder更新地址:
Eclipse 3.6 (Helios)
http://dl.google.com/eclipse/inst/d2wbpro/latest/3.6
Eclipse 3.5 (Galileo)
http://dl.google.com/eclipse/inst/d2wbpro/latest/3.5
Eclipse 3.4 (Ganymede)
http://dl.google.com/eclipse/inst/d2wbpro/latest/3.4

 

 

 

 

 

http://code.google.com/intl/zh-CN/javadevtools/download-wbpro.html   

 

 




WindowBuilder 果然是目前最好的Java富客户端可视化开发工具

经过试用,真是掩饰不住心中的兴奋,寻找很久,朝思梦想的可视化开发工具终于让我找到了。

 

我用的是其中的Swing Designer,不过也顺便试了一下SWT Designer和GWT Designer,都非常不错,GWT Designer对于做Ajax(基于Google)开发的真是个神奇的工具!

 

很好,很强大,希望能越来越棒!

 

 

打开Eclipse,打开菜单Help→Install New Software,单击Work with后的Add按钮,输入与你Eclipse对应版本的更新地址,我的是3.5版本
swing/swt可视化开发工具windowbuilder免费了

单击确定后,就可以在列表中看到相关的安装文件。点击next一路安装下去。

安装完成后,重启Eclipse,点击File→New→Project...

swing/swt可视化开发工具windowbuilder免费了

新建JFrame
swing/swt可视化开发工具windowbuilder免费了

swing/swt可视化开发工具windowbuilder免费了

swing/swt可视化开发工具windowbuilder免费了

生成的代码也很干净
swing/swt可视化开发工具windowbuilder免费了import java.awt.BorderLayout;
swing/swt可视化开发工具windowbuilder免费了
import java.awt.EventQueue;
swing/swt可视化开发工具windowbuilder免费了
swing/swt可视化开发工具windowbuilder免费了
import javax.swing.JFrame;
swing/swt可视化开发工具windowbuilder免费了
import javax.swing.JPanel;
swing/swt可视化开发工具windowbuilder免费了
import javax.swing.border.EmptyBorder;
swing/swt可视化开发工具windowbuilder免费了
import javax.swing.JLabel;
swing/swt可视化开发工具windowbuilder免费了
import javax.swing.JTextField;
swing/swt可视化开发工具windowbuilder免费了
import javax.swing.JButton;
swing/swt可视化开发工具windowbuilder免费了
import java.awt.event.ActionListener;
swing/swt可视化开发工具windowbuilder免费了
import java.awt.event.ActionEvent;
swing/swt可视化开发工具windowbuilder免费了
import javax.swing.UIManager;
swing/swt可视化开发工具windowbuilder免费了
swing/swt可视化开发工具windowbuilder免费了
swing/swt可视化开发工具windowbuilder免费了
public class MianFrame extends JFrame {
swing/swt可视化开发工具windowbuilder免费了
swing/swt可视化开发工具windowbuilder免费了    
private JPanel contentPane;
swing/swt可视化开发工具windowbuilder免费了    
private JTextField textField;
swing/swt可视化开发工具windowbuilder免费了    
private JTextField textField_1;
swing/swt可视化开发工具windowbuilder免费了
swing/swt可视化开发工具windowbuilder免费了    
/**
swing/swt可视化开发工具windowbuilder免费了     * Launch the application.
swing/swt可视化开发工具windowbuilder免费了     
*/

swing/swt可视化开发工具windowbuilder免费了    
public static void main(String[] args) {
swing/swt可视化开发工具windowbuilder免费了        
try {
swing/swt可视化开发工具windowbuilder免费了            UIManager.setLookAndFeel(
"com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
swing/swt可视化开发工具windowbuilder免费了        }
 catch (Throwable e) {
swing/swt可视化开发工具windowbuilder免费了            e.printStackTrace();
swing/swt可视化开发工具windowbuilder免费了        }

swing/swt可视化开发工具windowbuilder免费了        EventQueue.invokeLater(
new Runnable() {
swing/swt可视化开发工具windowbuilder免费了            
public void run() {
swing/swt可视化开发工具windowbuilder免费了                
try {
swing/swt可视化开发工具windowbuilder免费了                    MianFrame frame 
= new MianFrame();
swing/swt可视化开发工具windowbuilder免费了                    frame.setVisible(
true);
swing/swt可视化开发工具windowbuilder免费了                }
 catch (Exception e) {
swing/swt可视化开发工具windowbuilder免费了                    e.printStackTrace();
swing/swt可视化开发工具windowbuilder免费了                }

swing/swt可视化开发工具windowbuilder免费了            }

swing/swt可视化开发工具windowbuilder免费了        }
);
swing/swt可视化开发工具windowbuilder免费了    }

swing/swt可视化开发工具windowbuilder免费了
swing/swt可视化开发工具windowbuilder免费了    
/**
swing/swt可视化开发工具windowbuilder免费了     * Create the frame.
swing/swt可视化开发工具windowbuilder免费了     
*/

swing/swt可视化开发工具windowbuilder免费了    
public MianFrame() {
swing/swt可视化开发工具windowbuilder免费了        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
swing/swt可视化开发工具windowbuilder免费了        setBounds(
100100450300);
swing/swt可视化开发工具windowbuilder免费了        contentPane 
= new JPanel();
swing/swt可视化开发工具windowbuilder免费了        contentPane.setBorder(
new EmptyBorder(5555));
swing/swt可视化开发工具windowbuilder免费了        setContentPane(contentPane);
swing/swt可视化开发工具windowbuilder免费了        contentPane.setLayout(
null);
swing/swt可视化开发工具windowbuilder免费了        
swing/swt可视化开发工具windowbuilder免费了        JLabel label 
= new JLabel("\u7528\u6237\u540D");
swing/swt可视化开发工具windowbuilder免费了        label.setBounds(
79335415);
swing/swt可视化开发工具windowbuilder免费了        contentPane.add(label);
swing/swt可视化开发工具windowbuilder免费了        
swing/swt可视化开发工具windowbuilder免费了        textField 
= new JTextField();
swing/swt可视化开发工具windowbuilder免费了        textField.setBounds(
1433020621);
swing/swt可视化开发工具windowbuilder免费了        contentPane.add(textField);
swing/swt可视化开发工具windowbuilder免费了        textField.setColumns(
10);
swing/swt可视化开发工具windowbuilder免费了        
swing/swt可视化开发工具windowbuilder免费了        JLabel label_1 
= new JLabel("\u5BC6  \u7801");
swing/swt可视化开发工具windowbuilder免费了        label_1.setBounds(
79895415);
swing/swt可视化开发工具windowbuilder免费了        contentPane.add(label_1);
swing/swt可视化开发工具windowbuilder免费了        
swing/swt可视化开发工具windowbuilder免费了        textField_1 
= new JTextField();
swing/swt可视化开发工具windowbuilder免费了        textField_1.setBounds(
1438620621);
swing/swt可视化开发工具windowbuilder免费了        contentPane.add(textField_1);
swing/swt可视化开发工具windowbuilder免费了        textField_1.setColumns(
10);
swing/swt可视化开发工具windowbuilder免费了        
swing/swt可视化开发工具windowbuilder免费了        JButton btnNe 
= new JButton("\u767B\u9646");
swing/swt可视化开发工具windowbuilder免费了        btnNe.addActionListener(
new ActionListener() {
swing/swt可视化开发工具windowbuilder免费了            
public void actionPerformed(ActionEvent e) {
swing/swt可视化开发工具windowbuilder免费了            }

swing/swt可视化开发工具windowbuilder免费了        }
);
swing/swt可视化开发工具windowbuilder免费了        btnNe.setBounds(
1071559323);
swing/swt可视化开发工具windowbuilder免费了        contentPane.add(btnNe);
swing/swt可视化开发工具windowbuilder免费了        
swing/swt可视化开发工具windowbuilder免费了        JButton button_1 
= new JButton("\u5173\u95ED");
swing/swt可视化开发工具windowbuilder免费了        button_1.setBounds(
2431559323);
swing/swt可视化开发工具windowbuilder免费了        contentPane.add(button_1);
swing/swt可视化开发工具windowbuilder免费了    }

swing/swt可视化开发工具windowbuilder免费了}