「java创建子窗口」Java窗口创建

博主:adminadmin 2022-12-01 22:48:10 110

本篇文章给大家谈谈java创建子窗口,以及Java窗口创建对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

JAVA如何给程序设置一个窗口

首先,绘制一个默认的窗体,创建好工程,包,类,命名类为Window.很简单,在类中添加一个私有属性JFrame,这么写:private JFrame f = new JFrame("欢迎来到本自助银行");Window的构造方法中,只写 f.setVisible(true);以及窗体的初始位置和初始大小:f.setLocation(300, 200);f.setSize(800, 500);

然后在同一个构造函数中跟进一行f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);此为设置关闭图标即退出程序紧接着,写f.setResizable(false);此为设置不可更改窗体大小。如图,的确没办法更改了。

最后,便是画龙点睛的一笔,给窗体添加一个图标,显得更专业了一些:f.setIconImage(Toolkit.getDefaultToolkit().createImage("E:\\a.jpg"));

这里有一点比较重要,重申一句。构造器中的设置比静态属性初始化设置更有直接影响力。而且,程序是执行向上覆盖的。也就是说,如果之后有过更改,那么更改之后就显示更改后的结果,比如,在这个构造函数中再写f.setTitle("好好活着");那么,请注意窗体的文字。如图:

java中子窗口限制父窗口问题

楼主问为什么使用Dialog创建模式窗口,我的回答如下:

首先我们先看下在操作系统中是如何创建窗口的,这是WIN32 API:

invoke CreateWindowEx,dwExStyle,lpClassName,lpWindowName,dwStyle,x,y,nWidth,nHeight,hWndParent,hMenu,hInstance,lpParam

对于一个普通的窗口,其中hMenu是指要出现的菜单的句柄,然后————当建立的窗口是子窗口时,这个参数是另一个含义,这时hMenu参数指定的是子窗口的ID号,那么结果是————节省一个参数的位置,同时子窗口也不会有菜单了。所以要想子窗口有菜单只有微软自己可以做到了。

回到模式窗口的问题上来,模式窗口是子窗口,所以不会有菜单,那为什么只能用Dialog创建模式窗口呢,这是JAVA设计是确定的,即使开放了Frame的setModal,也没用,因为得到的结果还是一个和Dialog没有区别的窗口,这种情况在其它语言里是存在的。

import java.awt.*;

import java.awt.event.*;

public class TestDialog {

public TestDialog() {

final Frame f1 = new Frame("1");

f1.setSize(500, 500);

f1.setVisible(true);

Button b = new Button("Exit");

TextArea jt = new TextArea(3, 0);

b.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

System.exit(1);

}

});

Dialog dlinf1 = new Dialog(f1, "这是为了100分特地做的一段代码");

dlinf1.setSize(300, 300);

dlinf1.add(b, "North");

dlinf1.add(jt,"Center");

dlinf1.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

System.exit(1);

}

});

dlinf1.setModal(true);

dlinf1.setVisible(true);

}

public static void main(String[] args) {

new TestDialog();

}

}

用java做一个窗口

java做窗口的话,需要用swing技术,之后创建JFrame 等组件,即可完成窗口创建工作。

package inter.frame;import java.awt.BorderLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;import javax.swing.JFrame;

import javax.swing.JMenu;

import javax.swing.JMenuBar;

import javax.swing.JMenuItem;

import javax.swing.JOptionPane;public class MenuTest { /**

* @param args

*/

JFrame frame; //定义一个窗口架构

JMenuBar mb;//定义窗口的菜单工具栏

JMenu m; //定义菜单

JMenuItem mi1;//定义菜单的内容

JMenuItem mi2; //定义菜单的内容

public MenuTest() {

initFrame();

initAction();

}

public void initFrame() {

frame = new JFrame();

mb = new JMenuBar();

m = new JMenu("学生查询");

mi1 = new JMenuItem("确认");

mi2 = new JMenuItem("取消"); m.add(mi1);

m.add(mi2);

mb.add(m);

frame.add(mb, BorderLayout.NORTH);

frame.setSize(300, 300); //设置窗口大小

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置退出时关闭窗口

frame.setVisible(true);//设置窗口可见

} public void initAction() {

mi1.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

// 具体实现代码根据实际要求填写

System.out.println("click");

JOptionPane.showMessageDialog(null, "你点击了确定按钮");

}

});

mi2.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

// 具体实现代码根据实际要求填写

JOptionPane.showMessageDialog(null, "你点击了取消按钮");

}

});

} public static void main(String[] args) {

new MenuTest();//执行菜单创建

}}

如何用eclipse编写java窗口程序

原料/工具:

电脑一台

Eclipse

1.双击电脑桌面上的Eclipse图标,打开eclipse,显示如下界面:

2.选择菜单栏的file,选择New,再点击New子栏下的Project选项;在弹出的窗口中选择“java——java project";

3.在”Project name“后的空白栏中填写工程名,一般工程名为小写字母开头;

4.在eclipse页面左边可以看见工程列表,将鼠标移至工程名,右击鼠标,选择new——package建包;在弹出的窗口中,在"Name"栏填写包名,点击finish按钮完成建包;

5.展开工程名,右击选中的包,选择”New——Class",建立类,在新弹出的窗口中,在“Name”栏填写类名,如果这个类包含main方法,应该将下面的

public static void main(String[] args)勾选上;

6.以上步骤全部完成后,就可以开始编写程序了。

用java创建窗口

我试一下硬盘文件存储吧,首先在C盘根目录下创建个login.swing的文件,在里面写上 tom##123lydia##123 ,这个为了方便测试,自己试下吧,我也是没学多久,如果有太2的地方,请联系我...谢谢...;

import java.awt.*;

import javax.swing.*;

import java.io.*;

public class LoginTest implements ActionListener{

private JFrame jf ;

private JLabel l1,l2 ;

private JTextField tf1 ;

private JPasswordField tf2;

private JPanel northPanel,centerPanel ;

private JButton b1,b2 ;

private File file = new File("c:/login.swing");

public LoginTest() {

jf = new JFrame("My First WindowTest") ;

northPanel = new JPanel(new GridLayout(2,2,10,10)) ;

l1 = new JLabel("用户名:") ;

tf1 = new JTextField() ;

l2 = new JLabel("密 码:") ;

tf2 = new JPasswordField() ;

northPanel.add(l1);

northPanel.add(tf1);

northPanel.add(l2);

northPanel.add(tf2);

centerPanel = new JPanel();

b1 = new JButton("login");

b2 = new JButton("exit");

centerPanel.add(b1);

centerPanel.add(b2);

b1.addActionListener(this);

b2.addActionListener(this);

jf.add(northPanel);

jf.add(centerPanel,"South");

jf.setSize(200,130);

Dimension size = Toolkit.getDefaultToolkit().getScreenSize();

jf.setLocation(size.width / 2 - jf.getWidth() / 2, size.height / 2 - jf.getHeight() / 2);

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jf.setVisible(true);

}

public void actionPerformed(ActionEvent e) {

if(e.getSource().equals(b1)) {

String username = tf1.getText() ;

String password = String.valueOf(tf2.getPassword());

BufferedReader br = null ;

try {

FileReader fr = new FileReader(file);

br = new BufferedReader(fr);

String line = "",str = "" ;

while((line = br.readLine()) != null) {

str += line ;

}

String[] users = str.split("");

for(String user : users) {

String[] userInfo = user.split("##");

if(userInfo[0].equals(username) userInfo[1].equals(password)) {

JOptionPane.showMessageDialog(null, "登录成功!") ;

return ;

}

}

JOptionPane.showMessageDialog(null, "用户名或密码错误!") ;

return ;

} catch (FileNotFoundException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

} catch (IOException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

} else {

System.exit(0);

}

}

public static void main(String args[]) {

new LoginTest();

}

}

java图形界面子窗体怎么弄?

给你一段我自己用Swing写的MDI(多文档用户界面)的代码,仅供参考: package com.jb.cdjj.y2t027.flydream.hrms.swing;import java.awt.AWTEvent;

import java.awt.BorderLayout;

import java.awt.Dimension;

import java.awt.FlowLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.ComponentAdapter;

import java.awt.event.ComponentEvent;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.beans.PropertyVetoException;

import java.text.SimpleDateFormat;

import java.util.Calendar;import javax.swing.BorderFactory;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JDesktopPane;

import javax.swing.JFrame;

import javax.swing.JInternalFrame;

import javax.swing.JLabel;

import javax.swing.JMenu;

import javax.swing.JMenuBar;

import javax.swing.JMenuItem;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JProgressBar;

import javax.swing.JScrollPane;

import javax.swing.JSeparator;

import javax.swing.JToolBar;

import javax.swing.Timer;

import javax.swing.border.BevelBorder;import com.jb.cdjj.y2t027.flydream.hrms.pojo.UsersPojo;

import com.jb.cdjj.y2t027.flydream.hrms.swing.component.JDesktopScrollPane;

import com.jb.cdjj.y2t027.flydream.hrms.swing.utils.CharacterCommon;/**

* p描述:FrmMain 主界面视窗UI类

* p作者:邓超

* p班级:Y2T027 FlyDream 小组

* p时间:2009-5-13

* p地点:宿舍

* p版本:1.0.0.1

*/

public class FrmMain extends JFrame { /**

* 序列化版本ID

*/

private static final long serialVersionUID = -6893438572255430328L; {

// 设置UI感观效果(使用三方jar包:looks-2.1.4.jar)

try {

javax.swing.UIManager.setLookAndFeel("com.jgoodies.looks.plastic.PlasticXPLookAndFeel");

} catch(Exception e) {

e.printStackTrace();

}

} /**

* UI组件

*/

private JMenuItem mnuItemHelpTopic;

private JPanel pnlMain;

private JMenu mnuHelp;

private JMenuItem mnuItemDelete;

private JPanel pnlTlb;

private JSeparator septEdit;

private JMenuItem mnuItemPaste;

private JMenuItem mnuItemCopy;

private JMenuItem mnuItemCut;

private JMenu mnuEdit;

private JMenuItem mnuItemLock;

private JMenuItem mnuItemExit;

private JSeparator septSystemBottom;

private JMenuItem mnuItemAbout;

private JMenuItem mnuItemLogout;

private JSeparator septSystemTop;

private JMenuItem mnuItemPermissions;

private JMenuItem mnuItemParamConfig;

private JLabel lblLoginUser;

private JScrollPane pnlScrollContent;

private JMenuItem mnuCloseAll;

private JSeparator septWindow;

private JMenuItem mnuItemCloseCurrent;

private JMenuItem mnuItemSwitch;

private JMenu mnuWindow;

private JLabel lblTime;

private JLabel lblProgressMsg;

private JProgressBar progressOperation;

private JDesktopPane pnlDsk;

private JPanel pnlStatus;

private JButton btnHelp;

private JButton btnExit;

private JButton btnLogout;

private JButton btnLockScreen;

private JToolBar tlbMain;

private JMenu mnuSystem;

private JMenuBar mnuBarMain;

private JButton btnPermissions;

private JButton btnParamConfig;

private JLabel lblTlbSpliter2;

private JLabel lblTlbSpliter1;

private JMenuItem mnuModifyPwd;

private static FrmLogin frmLogin;

private JPanel pnlContent;

private static UsersPojo currentLoginUser; /**

* 获取当前登录用户

* @return 当前登录用户实体

*/

public static UsersPojo getCurrentLoginUser() {

return currentLoginUser;

}

/**

* 设置当前登录用户

* @param currentLoginUser 当前登录用户实体

*/

public static void setCurrentLoginUser(UsersPojo currentLoginUser) {

FrmMain.currentLoginUser = currentLoginUser;

} /**

* 参数化构造器

* @param loginWindow 登录UI实例

*/

public FrmMain(FrmLogin loginWindow) {

super();

frmLogin = loginWindow;

initGUI();

this.addComponentListener(new ComponentAdapter(){ /**

* 组件显示事件方法

*/

@Override

public void componentShown(ComponentEvent e) {

lblLoginUser.setText("【"

+ (currentLoginUser != null

? (currentLoginUser.getLoginAccount() + "/" + currentLoginUser.getUsersName())

: "未登录")

+ "】");

super.componentShown(e);

}

});

}

/**

* UI组件初始化方法

*/

private void initGUI() {

try {

{

BorderLayout thisLayout = new BorderLayout();

getContentPane().setLayout(thisLayout);

}

{

mnuBarMain = new JMenuBar();

setJMenuBar(mnuBarMain);

{

mnuSystem = new JMenu();

mnuBarMain.add(mnuSystem);

mnuSystem.setText("系统(S)");

mnuSystem.setMnemonic(java.awt.event.KeyEvent.VK_S);

mnuSystem.setName("mnuSystem");

mnuSystem.setDoubleBuffered(false);

{

mnuItemParamConfig = new JMenuItem();

mnuSystem.add(mnuItemParamConfig);

mnuItemParamConfig.setText("参数设置(P)...");

mnuItemParamConfig.setToolTipText("前台系统字典及参数设置");

mnuItemParamConfig.setMnemonic(java.awt.event.KeyEvent.VK_P);

mnuItemParamConfig.setName("mnuItemParamConfig");

mnuItemParamConfig.setIcon(new ImageIcon(getClass().getClassLoader().getResource("img/Param.png")));

mnuItemParamConfig.setDoubleBuffered(false);

mnuItemParamConfig.addActionListener(new ActionListener() {

/**

* 激活参数设置菜单项的事件方法

*/

public void actionPerformed(ActionEvent e) {

openOnlyOneInternalFrame(FrmInlParam.getInstance());

}

});

}

{

mnuItemPermissions = new JMenuItem();

mnuSystem.add(mnuItemPermissions);

mnuItemPermissions.setText("权限管理(E)...");

mnuItemPermissions.setToolTipText("系统用户及其授权管理");

mnuItemPermissions.setName("mnuItemPermissions");

mnuItemPermissions.setMnemonic(java.awt.event.KeyEvent.VK_E);

mnuItemPermissions.setIcon(new ImageIcon(getClass().getClassLoader().getResource("img/Permissions.png")));

mnuItemPermissions.setDoubleBuffered(false);

mnuItemPermissions.addActionListener(new ActionListener() {

/**

* 激活权限管理菜单项的事件方法

*/

public void actionPerformed(ActionEvent e) {

openOnlyOneInternalFrame(FrmInlPermissions.getInstance());

}

});

}

{

septSystemTop = new JSeparator();

mnuSystem.add(septSystemTop);

septSystemTop.setName("septSystemTop");

septSystemTop.setDoubleBuffered(false);

}

----------------------------------字数太多,只能分开发。

关于java创建子窗口和Java窗口创建的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-01,除非注明,否则均为首码项目网原创文章,转载请注明出处。