文档章节

Java Swing基本使用

IT-Mamba
 IT-Mamba
发布于 2017/06/30 10:57
字数 525
阅读 15
收藏 0
    JFrame frame = new JFrame("new Bank");

    frame.setSize(300, 400);

    JPanel panel = new JPanel();

    // 添加面板
     frame.getContentPane().add(panel);

    // 创建 JLabel
    JLabel userLabel = new JLabel("BankCode:");

    userLabel.setBounds(10, 20, 80, 25);
    panel.add(userLabel);

        /*
		 * 创建文本域用于用户输入
		 */
		final JTextField userText = new JTextField("Xysw", 15);
		userText.setBounds(100, 20, 165, 25);
		panel.add(userText);

		// 创建 JLabel
		JLabel userLabel2 = new JLabel("银行名称:");
		/*
		 * 这个方法定义了组件的位置。 setBounds(x, y, width, height) x 和 y 指定左上角的新位置,由 width
		 * 和 height 指定新的大小。
		 */
		userLabel.setBounds(10, 20, 80, 25);
		panel.add(userLabel2);

		/*
		 * 创建文本域用于用户输入
		 */
		final JTextField userText2 = new JTextField("新银盛微信扫码", 15);
		userText.setBounds(100, 20, 165, 25);
		panel.add(userText2);

		panel.setBorder(new EmptyBorder(5, 5, 5, 5));
		panel.setLayout(new FlowLayout(FlowLayout.LEFT, 20, 20));
		JLabel label = new JLabel(" 支付类型:  ");
		panel.add(label);
		final JComboBox comboBox = new JComboBox();
		comboBox.addItem("WeiXinPay");
		comboBox.addItem("AlipyPay");
		comboBox.addItem("QQPay");
		comboBox.addItem("WebPay");
		panel.add(comboBox);

		final JCheckBox checkBox1 = new JCheckBox("BankData", true);
		panel.add(checkBox1);
		final JCheckBox checkBox2 = new JCheckBox("BankCodeData");
		panel.add(checkBox2);
		final JCheckBox checkBox3 = new JCheckBox("支付", true);
		panel.add(checkBox3);
		final JCheckBox checkBox4 = new JCheckBox("查询", true);
		panel.add(checkBox4);
	

// 创建提交按钮
		JButton createButton = new JButton("create");
		createButton.setBounds(10, 80, 80, 25);
		panel.add(createButton);

//点击按钮触发事件,输出显示输入情况和选择情况
createButton.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent arg0) {
				System.out.println("JTextField:" + userText.getText());
				System.out.println("JTextField:" + userText2.getText());
				System.out.println("JComboBox:" + comboBox.getSelectedIndex());
				System.out.println("JCheckBox:" + checkBox1.getText()
						+ checkBox1.isSelected());
				System.out.println("JCheckBox:" + checkBox2.getText()
						+ checkBox2.isSelected());
				System.out.println("JCheckBox:" + checkBox3.getText()
						+ checkBox3.isSelected());
				System.out.println("JCheckBox:" + checkBox4.getText()
						+ checkBox4.isSelected());
			
                System.out.println(System.getProperty("user.dir"));//显示当前路径

                //此处可加上所需要的业务逻辑
});


// 设置界面可见
		frame.setVisible(true);





以上是简单的窗体创建,以及点击button触发事件的简单示例。

获取文本框输入信息;

获取下拉菜单选择信息;

获取复选框勾选信息;

获取到所需信息后即可通过点击出发业务逻辑代码去处理相关参数。

 

在编译器运行时生成文件不会出现中文乱码,但是打包成jar运行后输出的文件会存在中文乱码

目前解决方法:创建 start.bat文件放于jar文件同一目录下

内容:java -Dfile.encoding=utf-8 -jar .\newBank.jar

通过设置编码运行生成的文件不会有中文乱码了,但是在dos输出的还是中文乱码。

© 著作权归作者所有

IT-Mamba
粉丝 10
博文 132
码字总数 55322
作品 0
惠州
程序员
私信 提问
请教java知识点的问题?

哪位java高手帮我总结一下,java重要知识点。 覆盖,集成,线程 等等,这些功能到底有什么用? 基本知识点都基本掌握了, 但是总觉得谢谢学了,用的不多。 是不是写很贴别的逻辑时候才能用上...

luxury515
2015/10/06
141
1
请教一些, 关于Java EE的学习路线

我现在是一名大三的学生(即将大四),学过C/C++/JAVA等语言,像HTML5,arm,Linux驱动开发,qt之类的也学过,以前和自己周围的同学比起来感觉还不错,不过最近去尝试去找份实习工作(java方...

芮淼一线
2015/07/10
1K
4
好程序员Java教程解读什么是swing

  好程序员Java教程解读什么是swing,swing是java GUI应用程序,也就是java做的桌面应用。运行swing程序要求用户电脑上有java环境,这一点不太现实也不方便。现在的java主要以web方向为主,...

好程序员IT
07/24
30
0
简单计算器

java swing 实现的简单计算器,jdk 7下可正常运行. 该作品可作为java swing学习使用,仅用于java编程学习,或个人使用。 该作品仅承诺可以正常运行,若需要改进功能,需另行商议。...

dhslp
2016/07/31
52
0
如何学习java

如果您是java的初学者,最想知道的莫过于如何才能学好java。以下是我的几点建议。 1.奠定java的语法基础 学习java的第一步,就是学会使用java这个程序语言来编写程序,而学习程序语言的第一步...

精华之王
2009/04/11
258
0

没有更多内容

加载失败,请刷新页面

加载更多

解答二进制求和

思路:创建一个新的字符串,用于记录原两个字符串每位相加的结果。 1、因为是从左到右计算,所以要把字符串先进行反转,用reverse()方法。 2、字符串对齐,采用补零的方法。 3、计算的时候...

无名氏的程序员
15分钟前
3
0
JSONUtils

package com.demo.utils;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Tr......

任梁荣
16分钟前
4
1
在jest中配置typescript

测试是报错: Property 'assign' does not exist on type 'ObjectConstructor' NodeJS已经是最新版了,但道理不需要polyfill。 然后发现是typescript的lib没有"es2015.core",说明ts-jest没有......

linsk1998
16分钟前
2
0
Redis实现分布式文件夹锁

缘起 最近做一个项目,类似某度云盘,另外附加定制功能,本人负责云盘相关功能实现,这个项目跟云盘不同的是,以项目为分配权限的单位,同一个项目及子目录所有有权限的用户可以同时操作所有...

逸竹小站
26分钟前
2
0
Andorid SQLite数据库开发基础教程(2)

Andorid SQLite数据库开发基础教程(2) 数据库生成方式 数据库的生成有两种方式,一种是使用数据库管理工具生成的数据库,我们将此类数据库称为预设数据库,另一种是使用代码生成的数据库。...

大学霸
46分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部