Java JFrame可视化开发的步骤

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

JFrame可以做出类似于QQ登录功能的窗体,通过JFrame可以利用Java代码实现窗体功能,一般用于CS项目的C(客户端)的开发;

一、JFrame是什么?

利用JFrame可以自己写java代码,也可以通过在eclipse中安装windowbuilder插件,这样可以利用windowbuilder插件对窗体进行可视化的快速创建、操作等,快速实现编程的开发;

通过eclipse利用windowbuilder插件对JFrame窗体进行可视化开发的一般步骤如下:

二、使用步骤

1.在eclipse中添加windowbuilder插件:

1、首先查看自己eclipse的版本:

扫描二维码关注公众号,回复: 15393170 查看本文章

2、通过eclipse版本在windowbuilder插件网上选择对应的版本号的http地址:网址:WindowBuilder | Download | The Eclipse Foundation

 

3、然后再eclipse中安装windowbuilder插件:

  eclipse-->help-->Install New Software打开:

Name:随便写一个名字,最好是见名知意,如:windowbuilder

Locatioin:就是写刚才根据eclipse版本获取的http栏中的地址;

下一步,全部选择,然后下一步,直到完成,然后重启eclipse即可完成;

2.在eclipse中创建windowbuilder的java项目,并创建可视化开发的java实体类:

1、通过windowbuilder创建java项目:

2、添加jar包:DJNativeSwing-1.0.0.jar、DJNativeSwing-SWT-1.0.0.jar、org.eclipse.swt.win32.win32.x86_64-4.3.jar(此jar包根据计算机是32位还是64位进行下载,本例中是64位操作系统)

3、通过windowbuilder创建java实体类:new--->other:

点击Design可以进行视图化开发

Swing中嵌入html界面示例:


import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;  
import java.awt.event.ItemEvent;  
import java.awt.event.ItemListener;
import java.util.UUID;

import javax.swing.BorderFactory;  
import javax.swing.JCheckBox;  
import javax.swing.JFrame;  
import javax.swing.JPanel;  
import javax.swing.SwingUtilities;

import com.nari.slsd.hd.common.FuncActionItem;
import com.nari.slsd.hd.common.IRunEntry;
import com.nari.slsd.hd.common.IStaticMsgCard;
import com.nari.slsd.hd.common.MessageBody;

import chrriis.common.UIUtils;  
import chrriis.dj.nativeswing.swtimpl.NativeInterface;  
import chrriis.dj.nativeswing.swtimpl.components.JWebBrowser;  
  
@SuppressWarnings("serial")  
public class ShowHtml extends JPanel implements IRunEntry,IStaticMsgCard {  
  
    public ShowHtml() {  
        super(new BorderLayout());  
        JPanel webBrowserPanel = new JPanel(new BorderLayout());  
        webBrowserPanel.setBorder(BorderFactory  
                .createTitledBorder("电能量系统"));  
        final JWebBrowser webBrowser = new JWebBrowser();  
        webBrowser.navigate("http://172.21.99.15:8008/wisdomServer/wisdomClient/main.html");  
        this.add(webBrowser);
        webBrowserPanel.add(webBrowser, BorderLayout.CENTER);  
        add(webBrowserPanel, BorderLayout.CENTER);  
        JPanel buttonPanel = new JPanel(new FlowLayout(FlowLayout.CENTER, 4, 4));  
        JCheckBox menuBarCheckBox = new JCheckBox("菜单栏", webBrowser  
                .isMenuBarVisible());  
        menuBarCheckBox.addItemListener(new ItemListener() {  
            public void itemStateChanged(ItemEvent e) {  
                webBrowser  
                        .setMenuBarVisible(e.getStateChange() == ItemEvent.SELECTED);  
            }  
        });  
        buttonPanel.add(menuBarCheckBox);  
        this.add(buttonPanel, BorderLayout.SOUTH);  
    }  
  
    public static void main(String[] args) {  
        UIUtils.setPreferredLookAndFeel();  
        NativeInterface.open();  
        SwingUtilities.invokeLater(new Runnable() {  
            public void run() {  
                JFrame frame = new JFrame();  
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
                frame.getContentPane().add(new ShowHtml(),  
                        BorderLayout.CENTER);  
                frame.setSize(800, 600);  
                frame.setLocationByPlatform(true);  
                frame.setVisible(true);  
            }  
        });  
        NativeInterface.runEventPump();  
    }

	@Override
	public UUID getAddr() {
		return null;
	}

	@Override
	public int getGroup() {
		return 0;
	}

	@Override
	public int getUsage() {
		return 0;
	}

	@Override
	public Object receiveMessage(IStaticMsgCard arg0, MessageBody arg1) {
		return null;
	}

	@Override
	public void setAddr(UUID arg0) {
		
	}

	@Override
	public IStaticMsgCard getPanelMessageCard() {
		return null;
	}

	@Override
	public String getTitle() {
		return "电能量";
	}

	@Override
	public Object invoke(Container arg0, FuncActionItem arg1) {
		// 将界面返回的出口
		return this;
	}  
}  

 
 

总结

以上就是今天要讲的内容,本文仅仅简单介绍了JFrame的使用,有什么问题可以进行留言。

猜你喜欢

转载自blog.csdn.net/wzw_wwl/article/details/124188378