java页面窗口代码,java生成窗口

Java 用户界面设计 求界面代码

一: 首先弄清题目的意思

创新互联是一家专业提供南昌县企业网站建设,专注与成都网站建设、网站设计、H5开发、小程序制作等业务。10年已为南昌县众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。

A.需要的主要组件列表:

1.  创建一个窗口,窗口标题叫Information

2.  3个标签, 用于显示文字 Name Number Class

3.  3个文本框, 用于填写信息

4.  1个按钮,  文字是确认

5.  1个文本域

B.业务逻辑

1. 当点击按钮确认的时候, 把 文本框的信息显示到文本域

C.设计的主要技术

JLabel , JButton, JTextField ...等, 都是swing的组件 ,  所以应该使用swing进行创建

二:  确定使用的布局

swing虽然重写了大部分的组件, 但是布局, 依旧沿袭awt技术

分析图片上的布局:

至少有2种方法可以实现, 

方法一: 绝对布局 , 优点:  配合可视化GUI拖曳, 可以完美的实现图上的组件的位置

但是缺点也是致命的, 不同的操作系统平台下, 可能会出现位置的移动,

只适合开发平台, 移植效果差 .  所以不推荐使用

方法二: 灵活的表格布局, 配合流式布局 , 所有操作系统下,显示效果都比较统一. 

三: 效果图

四: 参考代码

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class FrameDemo extends JFrame {

//申明需要的组件

private final JTextField jtf1,jtf2,jtf3;

private final JTextArea jta;

public FrameDemo() {

setTitle("Information");//设置窗口标题

setSize(320, 360);//设置窗口大小

setLocationRelativeTo(null);//设置窗口居中

setDefaultCloseOperation(EXIT_ON_CLOSE);//设置关闭时退出虚拟机

getContentPane().setLayout(new FlowLayout());//设置窗口布局为流式布局

JPanel jp = new JPanel(new GridLayout(4, 2));//设置jp面板为表格布局4行2列

//第一行

JPanel jp01 = new JPanel();

JLabel jl1 = new JLabel("Name:");

jp01.add(jl1);

JPanel jp1 = new JPanel();

jtf1 = new JTextField(8);

jp1.add(jtf1);

//第二行

JPanel jp02 = new JPanel();

JLabel jl2 = new JLabel("Number:");

jp02.add(jl2);

JPanel jp2 = new JPanel();

jtf2 = new JTextField(8);

jp2.add(jtf2);

//第三行

JPanel jp03 = new JPanel();

JLabel jl3 = new JLabel("Class:");

jp03.add(jl3);

JPanel jp3 = new JPanel();

jtf3 = new JTextField(8);

jp3.add(jtf3);

//第四行

JPanel jp04 = new JPanel();

JLabel jl4 = new JLabel("");

jp04.add(jl4);

JPanel jp4 = new JPanel();

JButton jb = new JButton("确认");

jp4.add(jb);

jp.add(jp01);

jp.add(jp1);

jp.add(jp02);

jp.add(jp2);

jp.add(jp03);

jp.add(jp3);

jp.add(jp04);

jp.add(jp4);

getContentPane().add(jp);

jta = new JTextArea();

jta.setColumns(20);//设置文本域的大小

jta.setEditable(false);//设置文本域不可编辑

jta.setBackground(jp.getBackground());//设置文本域的背景色和面板一样

getContentPane().add(jta);

jb.addActionListener(new ActionListener() {//给按钮添加事件

public void actionPerformed(ActionEvent e) {//点击按钮,显示信息到文本域

String name = jtf1.getText();

String number = jtf2.getText();

String clazz = jtf3.getText();

jta.setText("You name is "+name+" number is "+number+" class is "+clazz);

}

});

}

public static void main(String[] args) {

new FrameDemo().setVisible(true);//创建窗口,被设置为可见

}

}

五: 拓展

虽然图形界面的实现方法是多样的,  我们一定要根据具体情况, 选择一个比较优化的 合理的, 符合业务逻辑的实现方法

JAVA中打开新页面代码

/**

* 打开打印窗口

* url:链接页面或action动作

* Banglu

*/

function printWindow(url){

var sURL = url;

var sFeatures = "toolbar=no, menubar=no, scrollbars=no,resizable=yes, "

+ "location=no, status=no, titlebar=no, width=800, height=600, top=100, left=100";

window.open(sURL,'notoolbar',sFeatures);

}function exportWindow(url){

var sURL = url;

var sFeatures = "toolbar=no, menubar=no, scrollbars=no,resizable=yes, "

+ "location=no, status=no, titlebar=no, width=800, height=600, top=50, left=50";

var objwin=window.open(sURL,'export'+randomNum(),sFeatures);

objwin.close();

}

/**

* 打开模态窗口

* url:链接页面或action动作

* width:打开模态窗口的宽度

* height:打开模态窗口的高度

* 注意:打开模态窗口的页面中要在head后面加上

* meta http-equiv="Pragma" content="no-cache":禁止模态窗口缓存

* base target="_self"/:模态窗口中的表单在本窗口中提交

* a onClick='window.location = "view-source:" + window.location.href'b源文件/b/a 可以查看模态窗口的源文件

* Banglu

*/

function modalWindow(url, width, height){

var sURL = url;

var sFeatures = "dialogWidth:" + width + "px; dialogHeight:" + height + "px; "

+ "help:no; scroll:yes; center:yes; status:no;resizable:yes";

window.showModalDialog(sURL, window, sFeatures);

}/**

* 打开普通窗口

* url:链接页面或action动作

* width:宽度

* height:高度

* Banglu

*/

function openWindow(url, width, height){

var sURL=url;

var sFeatures = "scrollbars=yes, status=yes, resizable=yes,"

+ "toolbar=yes, menubar=yes, location=yes, titlebar=yes"

if(width!=null){

sFeatures+=", width="+width;

}

if(height!=null){

sFeatures+=", height="+height;

}

window.open(sURL, 'open'+randomNum(), sFeatures);

}/**

* 打开窗口

* url:链接页面或action动作

* width:宽度

* height:高度

Banglu

*/

function openNoBarWindow(url, width, height){

var sURL=url;

var sFeatures = "scrollbars=no, status=no, resizable=no,"

+ "toolbar=no, menubar=no, location=no, titlebar=no"

if(width!=null){

sFeatures+=", width="+width;

sFeatures+=", left="+(screen.width-width)/2;

}

if(height!=null){

sFeatures+=", height="+height;

sFeatures+=", top="+(screen.height-height-100)/2;

}

window.open(sURL, 'openNoBar'+randomNum(), sFeatures);

}

/**

* 打开全屏窗口

* url:链接页面或action动作

* Banglu

*/

function openFullWindow(url){

var sURL=url;

var sFeatures = "toolbar=no, menubar=no, scrollbars=no, resizable=yes, "

+ "location=no, status=no, titlebar=no, width="+(screen.width-10)+", "

+ "height="+(screen.height-60)+", top=0, left=0";

window.open(sURL, 'full'+randomNum(), sFeatures);

}/**

* 打开主窗口

* url:链接页面或action动作

* Banglu

*/

function openMainWindow(url){

var sURL=url;

var sFeatures = "toolbar=no, menubar=no, scrollbars=no, resizable=yes, "

+ "location=no, status=no,titlebar=no, width="+(screen.width-10)+", "

+ "height="+(screen.height-60)+", top=0, left=0";

window.open(sURL, 'main', sFeatures);

}

/**

* 设置链接

* url:连接的jsp页面或action动作

* Banglu

*/

function link(url, frameID){

if(frameID==null){

window.location.href = url;

}

else{

window.frames[frameID].location = url

}

}/**

* 回车代替tab

* Banglu

*/

function handleKey(){

var gk = window.event.keyCode;

if (gk==13) {

if(window.event.srcElement.tagName!='TEXTAREA'){

window.event.keyCode=9;

return;

}

}

}/**

* 全屏显示

* Banglu

*/

function fullScreen(){

window.dialogHeight=window.screen.availHeight;

window.dialogWidth=window.screen.availWidth;

}

function Resize_dialog(t,l,w,h) {

window.dialogTop = t+"px";

window.dialogLeft = l+"px";

window.dialogHeight = h+"px";

window.dialogWidth = w+"px";

}

java编写有窗口界面应用程序 求代码

package image;

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Dimension;

import java.awt.GridLayout;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.SwingUtilities;

public class PanelRunner extends JFrame

{

private static final long serialVersionUID = 1L;

private static void initPanels ( JFrame pr )

{

for ( int i = 0; i  5; i++ )

{

JPanel panel = new JPanel ();

switch (i)

{

case 0:

panel.setBackground (Color.RED);

panel.setPreferredSize (new Dimension (200, 100));

pr.add (panel, BorderLayout.NORTH);

break;

case 1:

panel.setBackground (Color.YELLOW);

panel.setPreferredSize (new Dimension (200, 300));

pr.add (panel, BorderLayout.EAST);

break;

case 2:

panel.setBackground (Color.ORANGE);

panel.setPreferredSize (new Dimension (200, 100));

pr.add (panel, BorderLayout.SOUTH);

break;

case 3:

panel.setBackground (Color.WHITE);

panel.setPreferredSize (new Dimension (200, 300));

pr.add (panel, BorderLayout.WEST);

break;

case 4:

pr.add (panel, BorderLayout.CENTER);

panel.setPreferredSize (new Dimension (200, 100));

panel.setLayout (new GridLayout (1, 2));

for ( int j = 0; j  2; j++ )

{

JPanel subPanel = new JPanel ();

subPanel.setPreferredSize (new Dimension (200, 100));

Color color = j == 0 ? Color.BLUE : Color.GREEN;

subPanel.setBackground (color);

panel.add (subPanel);

}

break;

default:

break;

}

}

}

private static void initFrame ( JFrame pr )

{

pr.setLayout (new BorderLayout ());

pr.setSize (600, 300);

pr.setLocationRelativeTo (null);

pr.setResizable (false);

pr.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);

}

public static void main ( String[] args )

{

SwingUtilities.invokeLater (new Runnable ()

{

@Override

public void run ()

{

PanelRunner pr = new PanelRunner ();

initFrame (pr);

initPanels (pr);

pr.setVisible (true);

}

});

}

}

用java写一个登陆界面代码。

概述

具体框架使用jframe,文本框组件:JTextField;密码框组件:JPasswordField;标签组件:JLabel;复选框组件:JCheckBox;单选框组件:JRadioButton;按钮组件JButton。

登录界面:

代码实例

import javax.swing.*;

import java.awt.*;   //导入必要的包

public class denglu extends JFrame{

JTextField jTextField ;//定义文本框组件

JPasswordField jPasswordField;//定义密码框组件

JLabel jLabel1,jLabel2;

JPanel jp1,jp2,jp3;

JButton jb1,jb2; //创建按钮

public denglu(){

jTextField = new JTextField(12);

jPasswordField = new JPasswordField(13);

jLabel1 = new JLabel("用户名");

jLabel2 = new JLabel("密码");

jb1 = new JButton("确认");

jb2 = new JButton("取消");

jp1 = new JPanel();

jp2 = new JPanel();

jp3 = new JPanel();

//设置布局

this.setLayout(new GridLayout(3,1));

jp1.add(jLabel1);

jp1.add(jTextField);//第一块面板添加用户名和文本框

jp2.add(jLabel2);

jp2.add(jPasswordField);//第二块面板添加密码和密码输入框

jp3.add(jb1);

jp3.add(jb2); //第三块面板添加确认和取消

//        jp3.setLayout(new FlowLayout());  //因为JPanel默认布局方式为FlowLayout,所以可以注销这段代码.

this.add(jp1);

this.add(jp2);

this.add(jp3);  //将三块面板添加到登陆框上面

//设置显示

this.setSize(300, 200);

//this.pack();

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

this.setTitle("登陆");

}

public static void main(String[] args){

new denglu();

}

}

拓展内容

java swing包

Swing 是一个为Java设计的GUI工具包。

Swing是JAVA基础类的一部分。

Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。

Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。它们是JFC的一部分。它们支持可更换的面板和主题(各种操作系统默认的特有主题),然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用JAVA支持的任意面板。轻量级组件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。

概念解析:

JFrame – java的GUI程序的基本思路是以JFrame为基础,它是屏幕上window的对象,能够最大化、最小化、关闭。

JPanel – Java图形用户界面(GUI)工具包swing中的面板容器类,包含在javax.swing 包中,可以进行嵌套,功能是对窗体中具有相同逻辑功能的组件进行组合,是一种轻量级容器,可以加入到JFrame窗体中。。

JLabel – JLabel 对象可以显示文本、图像或同时显示二者。可以通过设置垂直和水平对齐方式,指定标签显示区中标签内容在何处对齐。默认情况下,标签在其显示区内垂直居中对齐。默认情况下,只显示文本的标签是开始边对齐;而只显示图像的标签则水平居中对齐。

JTextField –一个轻量级组件,它允许编辑单行文本。

JPasswordField – 允许我们输入了一行字像输入框,但隐藏星号(*) 或点创建密码(密码)

JButton – JButton 类的实例。用于创建按钮类似实例中的 "Login"。


分享标题:java页面窗口代码,java生成窗口
标题链接:http://hbruida.cn/article/dsecgij.html