Java程序设计--Swing基础(第2部分)

JAVA核心:Swing程序设计 文章目录1. Swing 概述1.1 Swing 特点1.2 Swing 包1.3 常用Swing组件概述2. 常用窗体2.1 JFrame窗体2.2 JDialog窗体(对话框窗体)3. 标签组件与图标3.1 标签的使用3.2 图标的使用3.2.1 创建图标3.2.2 使用图片图标4. 常用布局管理器4.1 绝对布局4.2 流布局管理器4.3 边界布局管理器4.4 网络布局管理器4.5 网格组布局管理器5. 常用面板5.1 JPanel面板5.2 滚动面板6. 按钮组件6.1 提交按钮组件6.2 单选按钮 阅读详情
一、常用事件监听接口
1、ActionListener
用于接收操作事件的监听接口。例如:点击按钮、点击菜单项、文本框回车等功能。
【实例1】点击按钮事件
1 import javax.swing.*;
2 import java.awt.event.ActionEvent;
3 import java.awt.event.ActionListener;
4
5 public class ListenerTest extends JFrame {
6 public ListenerTest(){
7 this.setTitle("事件监听器");
8 this.setSize(300,300);
9 this.setLayout(null);
10 this.setLocationRelativeTo(null);
11 JButton jButton = new JButton("提交");
12 jButton.setBounds(110,30,60,30);
13 // 用于接收操作事件的监听接口,如:点击按钮
14 jButton.addActionListener(new ActionListener() {
15 @Override
16 public void actionPerformed(ActionEvent e) {
17 JOptionPane.showMessageDialog(null,
18 "这是一个点击按钮的事件监听");
19 }
20 });
21 this.add(jButton);
22 this.setVisible(true);
23 }
24
25 public static void main(String[] args) {
26 new ListenerTest();
27 }
28 }
【效果图】
【实例2】文本框回车事件
1 import javax.swing.*;
2 import java.awt.event.ActionEvent;
3 import java.awt.event.ActionListener;
4
5 public class ListenerTest extends JFrame {
6 public ListenerTest(){
7 this.setTitle("事件监听器");
8 this.setSize(300,300);
9 this.setLayout(null);
10 this.setLocationRelativeTo(null);
11 JButton jButton = new JButton("提交");
12 jButton.setBounds(110,30,60,30);
13 JTextField jTextField = new JTextField();
14 jTextField.setBounds(110,80,60,30);
15 // 用于接收操作事件的监听接口,如:文本框回车
16 jTextField.addActionListener(new ActionListener() {
17 @Override
18 public void actionPerformed(ActionEvent e) {
19 JOptionPane.showMessageDialog(null,
20 "这是一个文本框回车的事件监听,输入的数据是:" +
21 jTextField.getText());
22 }
23 });24 this.add(jTextField);
25 this.setVisible(true);
26 }
27
28 public static void main(String[] args) {
29 new ListenerTest();
30 }
31 }
【效果图】
2、MouseListener
用于处理鼠标事件的监听接口。包括:按下、释放、单击、进入、离开等。
【实例】鼠标事件
1 import javax.swing.*;
2 import java.awt.event.ActionEvent;
3 import java.awt.event.ActionListener;
4 import java.awt.event.MouseEvent;
5 import java.awt.event.MouseListener;
6
7 public class ListenerTest extends JFrame {
8 public ListenerTest(){
9 this.setTitle("时间监听器");
10 this.setSize(300,300);
11 this.setLayout(null);
12 this.setLocationRelativeTo(null);
13 JButton jButton = new JButton("提交");14 jButton.setBounds(110,30,60,30);
15 // 用于操作鼠标事件
16 jButton.addMouseListener(new MouseListener() {
17 //单击
18 @Override
19 public void mouseClicked(MouseEvent e) {
20 JOptionPane.showMessageDialog(null,"单击");
21 }
22 //按下
23 @Override
24 public void mousePressed(MouseEvent e) {
25 JOptionPane.showMessageDialog(null,"按下");
26 }
27 //释放
28 @Override
29 public void mouseReleased(MouseEvent e) {
30 JOptionPane.showMessageDialog(null,"释放");
31 }
32 //进入
33 @Override
34 public void mouseEntered(MouseEvent e) {
35 JOptionPane.showMessageDialog(null,"进入");
36 }
37 //离开
38 @Override
39 public void mouseExited(MouseEvent e) {
40 JOptionPane.showMessageDialog(null,"离开");
41 }
42 });
43 JTextField jTextField = new JTextField();
44 jTextField.setBounds(110,80,60,30);
45 jTextField.addActionListener(new ActionListener() {
46 @Override
47 public void actionPerformed(ActionEvent e) {
48 JOptionPane.showMessageDialog(null,
49 "这是一个文本框回车的事件监听,输入的数据是:"
50 + jTextField.getText());
51 }
52 });
53 this.add(jButton);54 this.setVisible(true);
55 }
56
57 public static void main(String[] args) {
58 new ListenerTest();
59 }
60 }
【效果图】
二、常用提示框总结

【实例1】

1 import javax.swing.*;
2 import java.awt.event.ActionEvent;
3 import java.awt.event.ActionListener;
4
5 public class ListenerTest extends JFrame {
6 public ListenerTest(){
7 this.setTitle("事件监听器");
8 this.setSize(300,300);
9 this.setLayout(null);
10 this.setLocationRelativeTo(null);
11 JButton jButton1 = new JButton("测试");
12 jButton1.setBounds(110,130,60,30);
13 jButton1.addActionListener(new ActionListener() {
14 @Override
15 public void actionPerformed(ActionEvent e) {
16 //普通提示框
17 JOptionPane.showMessageDialog(null,
18 "这是一个弹窗","普通提示框",JOptionPane.INFORMATION_MESSAGE);
19 //警告提示框
20 JOptionPane.showMessageDialog(null,
21 "这是一个弹窗","警告提示框",JOptionPane.WARNING_MESSAGE);
22 //错误提示框
23 JOptionPane.showMessageDialog(null,
24 "这是一个弹窗","错误提示框",JOptionPane.ERROR_MESSAGE);
25 //判断提示框
26 int t = JOptionPane.showConfirmDialog(null,
27 "确定删除?","这是弹窗标题",JOptionPane.YES_NO_OPTION);
28 if (t==JOptionPane.YES_OPTION){
29 System.out.println("确定操作");
30 } else {
31 System.out.println("取消操作");
32 }
33 //自定义判断提示框
34 Object[] options = {"确定(Y)","取消(N)"};
35 JOptionPane.showOptionDialog(null,"确定删除?","标题",
36 JOptionPane.YES_NO_OPTION,
37 JOptionPane.QUESTION_MESSAGE,null,
38 options,options[0]);
39 }
40 });
41 this.add(jButton1);
42 this.setVisible(true);
43 }
44
45 public static void main(String[] args) {
46 new ListenerTest();
47 }
48 }

JAVA之Swing程序设计 一.Swing概述 二.创建窗体 三.常用组件             1.JLabel标签组件             2.JButton按钮组件             3.JRadioButton(单选按钮)组件             4.JCheckBox(复选框)组件             5.JComboBox(选择框)组件             6.JList( 阅读详情

相关推荐

Java swing入门布局与日历

** Java swing入门布局与日历 **这次实验主要是学习使用布局类包括BorderLayout和gridLayout。 关于这两个布局我不再复述,网上说得都挺详细的。看看文档就好了: [https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/awt/BorderLayout.html]`` 先让我们来看一下效果: 点击上个月下个月能够成功的跳转。 现在来看看代码:博主用的是JDK11。 这个小项目分为两部分,一部分就

qq_44708044的博客 2843

Java-Swing程序设计

文章目录Swing概述Swing常用窗体1、JFrame窗体2、JDialog对话框3、JOptionPane小型对话框常用布局管理器1、null绝对布局2、FlowLayout流 布局管理器3、BorderLayout 边界 布局管理器4、GridLayout 网格布局管理器常用面板JScrollPane滚动面板文字标签组件与图标1、JLabrl标签2、图标的使用按钮组件1、JButto按钮2、JRadioButton单选按钮2、JCheckBox复选框列表组件1、JComboBox下拉列表框2、JLis

Lion__king的博客 7465

Java中Swing程序设计

Swing程序设计 Swing较早期版本中的AWT更为强大、性能更加优良,Swing中除了保留AWT中的几个重要的重量级组件之外,其他组件都为轻量级,这样使用Swing开发出的窗体风格会与当前运行平台上的窗体风格一致,程序员也可以在跨平台时指定窗体统一的风格与外观。Swing的使用很复杂,Swing基本要素:容器、组件、窗体布局、事件和监听器。 1.Swing概述 GUI(图像用户界面)为程序提供...

Happy Simon 997

Java核心(Swing 程序设计1-Swing 、常用窗体)

一、Swing 概述    GUI(图形用户界面)为程序提供图形界面,它最初的设计目的是为程序员构建一个通用的GUI,使其能够在所有的平台上运行,但 Java 1.0 中基础类 AWT(抽象窗口工具箱)并没有达到这个要求,于是 Swing 出现了,它是 AWT 组件的增强组件,但是它并不能完全替代 AWT 组件,这两种组件需要同时出现在一个图形用户界面中。    1.1  Swing 特点    ...

jsl-空零之旅 1万+

Java Swing程序设计40个案例详解

Swing库是Java的一个子项目,它是一个用于开发图形用户界面(GUI)的工具包。自Java 1.1版本起,Swing库成为了Java的一部分,它为Java程序员提供了一组丰富的GUI组件来创建窗口化应用程序。Swing的设计目标是实现一个与平台无关的GUI组件集,它基于Java的抽象窗口工具包(AWT),但提供了更广泛的组件和更复杂的控件。Swing库的出现主要是为了解决AWT在跨平台GUI开发中的一些局限性。

weixin_35756130的博客 1460

精通Java Swing程序设计

在当今快速发展的IT领域,Java Swing作为一个历史悠久的GUI工具包,为开发者提供了创建丰富交互式桌面应用的能力。Java Swing程序设计不仅涉及到基础的界面组件实现,而且涉及到了布局管理、事件处理、自定义控件开发等多个层面。本章旨在为读者提供一个全面的Swing设计概览,从理解Swing程序的基本组成和工作流程开始,为后面章节中对Swing组件的深入使用和高级配置打下坚实的基础。// 创建 JFrame 实例并设置标题// 设置窗口大小// 显示窗口。

weixin_31938351的博客 847

【Java基础之Swing】万字详谈GUI,一篇文章搞懂Swing

Swing:编程 🌈博客主页:强子的博客 📅 发文时间:2022.3.30 📕上篇文章-》awt实现弹球小游戏 🎈 一定存在只有你才能做成的事 🌹 博主水平有限,如有错误,欢迎指正 欢迎给位👍收藏💎评论✉ GUI之SwingSwing:编程📖📖3.1 Swing概述🍧🍧Swing的特征:🍩🍩3.2 Swing基本组件的用法🍭🍭3.3 Swing中的特殊容器🍱🍱3.4JProgressBar、ProgressMonitor、BoundedRangeModel实现进度条🍥🍥3.5 JList、JCombo

屠一乐的博客 2480

从X86到ARM:全面解析服务器CPU架构的演变与未来趋势

本文深入解析了服务器CPU架构从X86到ARM的演变历程与未来趋势。文章从CISC与RISC两种设计哲学切入,分析了X86凭借生态建立的帝国地位及其面临的功耗挑战,并重点阐述了ARM架构凭借其卓越的能效比优势,正从移动端向数据中心市场发起冲击。未来,异构计算、软硬协同与专用芯片将成为服务器CPU发展的核心方向。

gold的博客 1127

JAVA swing基础

一、swing基础  1、平台无关性,无需依赖平台    容器:代表管理,可以添加组件    组件:代表功能  2、类层次结构  java.awt.Component       java.awt.Container         java.awt.Window         javax.swing.JWindow          java.awt.Frame——javax

徐靖峰的专栏 2015

微电网模型Matlab Simulink,风光储微电网,永磁风机并网仿真,光伏并网仿真,蓄电池仿真

通过探究风光储微电网、永磁风机并网仿真、光伏并网仿真、蓄电池仿真、柴油发电机以及光储微电网和风储微电网等方面的技术,我们可以更好地理解微电网的工作原理和优化方法,从而为微电网的发展做出更大的贡献。微电网模型Matlab Simulink,风光储微电网,永磁风机并网仿真,光伏并网仿真,蓄电池仿真,柴油发电机,光储微电网 风储微电网 Matlab仿真平台搭建的风光储微电网模型,风光柴储微电网,pwm控制,风力发电,光伏发电,微电网并网离网切换,并网孤岛切换,功能强大。永磁风机的并网仿真是一个非常重要的环节。

sjbextz的博客 399

Trans论文复现:电池储能调峰和调频:超线性增益的联合优化程序代码!

本程序参考一区SCI期刊《Using Battery Storage for Peak Shaving and Frequency Regulation: Joint Optimization for Superlinear Gains》,程序。与之前将电池储能用于单一应用相比,研究结果表明,如果电池联合提供多种服务,它们可以获得比以前想象的更大的经济效益。欢迎感兴趣的小伙伴关注下方公众号获取完整版代码哦~,小编会继续推送更有质量的学习资料、文章程序代码~限于篇幅,仅列出部分算例的结果!

weixin_48747334的博客 567

Swing程序设计

一、Swing 1、Swing概述 Swing是一个用于开发Java应用程序用户界面的开发工具包。以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。原来的AWT组件来自java.awt 包,当含有AWT组件的Java应用程序在不同的平台上执行时,每个平台的GUI组件的显示会有所不同,但是在不同平台,上运行使用Swing开发的应用程序时,就可以统一GUI...

king_weng的博客 1182

【人工智能】人工智能基础概念、流派、发展史

人工智能初衷就是让计算机能够像人类一样具有自我思考、自我学习、自我决策的能力。依据百度百科上对人工智能定义:人工智能是研究、开发用于模拟、扩展和延伸人的智能的理论、方法、技术及应用系统的一门新的技术学科。人工智能是研究使计算机来模拟人的某些思维过程和智能行为的学科,主要包括计算机实现智能的原理、制造类似于人脑智能的计算机,使计算机能实现更高层次的应用。

WEL测试 1882

Java程序设计--Swing基础(第1部分)

Swing是一个为Java设计的GUI(图形用户界面)工具包。

ArrayAda的博客 1518

FPGA新手必看:用USB转TTL实现串口通信的完整流程(附CH340G电路详解)

本文为FPGA新手提供了通过USB转TTL模块实现串口通信的完整实战指南。详细解析了CH340G电路设计要点、硬件连接方法,并分享了经过验证的Verilog代码框架,帮助读者快速掌握FPGA与PC通信的核心技术,解决电平匹配与波特率设置等常见问题。

cake8的博客 1050

SAP CKMLCP 月结7大常见报错:从“未找到成本核算运行”到“物料占用”的完整解决方案

本文深入解析SAP CKMLCP月结过程中的7大常见报错,从权限问题到数据一致性错误,提供系统化的解决方案。重点解决'未找到成本核算运行'和'物料占用'等典型问题,帮助财务人员高效完成成本核算月结,确保数据准确性。

weixin_30299709的博客 416

Swing入门基础

                                                                              Swing入门基础1.前言:       当我们学习过了java中的基本语法,并且熟悉java的面向对象基础以后,我们就可以开始简单的Swing程序的设计,用过Vb的朋友可能会被它的简单的设计用户界面方法所吸引,只需要拖几个控件到窗体上,为每个

leeak的Java之旅 1353

28、数字电路测试与半导体内存测试全解析

本文全面解析了数字电路中的顺序电路测试生成方法与半导体内存测试技术。内容涵盖顺序电路中的故障检测、多重观察测试、可驱动性分析、伪组合电路测试及初始化问题,并深入探讨了内存技术发展、故障模型、测试流程与未来趋势。重点介绍了DRAM、SRAM等主流内存类型的特点,以及制造和使用过程中面临的永久性与非永久性故障挑战,提出了基于故障模型的高效测试策略与优化方案。

go5gopher的博客 122

【Java基础之Swing】万字详谈GUI,一篇文章搞懂Swing_swinggui

Swing是由100%纯Java实现的,不再依赖于本地平台的 GUI,因此可以在所有平台上都保持相同的界面外观。独立于本地平台的Swing组件被称为轻量级组件;而依赖于本地平台的 AWT 组件被称为重量级组件。由于 Swing 的所有组件完全采用 Java 实现,不再调用本地平台的 GUI,所以导致 Swing 图形界面的显示速度要比 AWT 图形界面的显示速度慢一些,但相对于快速发展的硬件设施而言,这种微小的速度差别无妨大碍。

2401_84519929的博客 2232

AI算力网络与通信领域QoS保障的测试方法

在当今数字化时代,AI技术蓬勃发展,AI算力网络应运而生。它将分布在不同地理位置的算力资源进行整合,以高效地支持各种AI应用,如深度学习训练、智能图像识别等。而通信领域则是信息传输的基石,确保数据能够准确、快速地在不同节点之间传递。QoS保障在通信领域至关重要,它可以确保不同类型的业务(如语音通话、视频会议、在线游戏等)获得与其需求相匹配的服务质量。在AI算力网络中,QoS保障同样不可或缺,因为AI任务对网络的带宽、延迟、可靠性等指标有严格要求。

AI算力网络与通信的博客 526

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

java swing实验_JAVA SWING图形界面程序设计实验报告(附完整代码)

图形界面(GUI)程序设计一、课题内容和要求内容:设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换后的结果。要求:学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法。通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法。二、设计思路分析class RMBtoDollar:主类,调用主函数。class change:设置界面,...

weixin_35541322的博客 1514

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Java_Swing程序设计

当单元格显示区域的面积大于组件面积,或者开一个组件占用多个单元格时,显示组件可能不必占用所有显示区域,在这种情况下可以通过fill属性设置组件的填充方式。事件几乎都以对象来表示,它是某种事件类的对象,事件源(如按钮)会在用户做出相应的动作(如按钮被按下)时产生事件对象,如动作事件对应ActionEvent类对象,同时要编写一个监听器的类必须实现相应的接口,如ActionEvent类对应的是ActionListener接口,需要获取某个事件对象必须实现相应的接口,同时需要将接口中的方法一一实现。

weixin_45893480的博客 1174

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

第18章Swing程序设计

用户在选择列表框中的列表项时,既可以通过单击列表项的方式选择列表项,也可以通过“单击列表项+按住Shift键”的方式连续选择列表项,还可以通过“单击列表项+按住Ctrl键”的方式跳跃式选择列表项,并能够在非选择状态和选择状态之间反复切换。表格中的数据内容需要予以维护,如使用getValueAt()方法获得表格中某一个单元格的值,使用addRow()方法向表格中添加新的行,使用setValueAt()方法修改表格中某一个单元格的值,使用removeRow()方法从表格中删除指定行等。

2302_76545553的博客 1119

java swing 代码_Java Swing入门基础

转自 键者天行1.前言:当我们学习过了java中的基本语法,并且熟悉java的面向对象基础以后,我们就可以开始简单的Swing程序的设计,用过Vb的朋友可能会被它的简单的设计用户界面方法所吸引,只需要拖几个控件到窗体上,为每个空件编写event就可以简单的实现界面设计.但是强大的java也不比vb逊?同样可以设计出精美的界面。http://www.gaodaima.com/41328.htmlJa...

weixin_39542850的博客 232

java swing组件模拟QQ登录部分代码

补上一条博客 CreatePanel.java 发完了才发现有一部分代码不全 可能因为网不好 编辑老出问题 import java.awt.*; import javax.swing.*; public class CreatePanel { private static LoginListener ll=null; //顶部面板区域 public static JPanel CreateNorthPanel (JFrame jf) { //创建一个JPanel顶部面板 JPanel

qq_43476420的博客 904

Java——Swing界面,接口和事件

Swing界面,接口和事件

seeyou__的博客 5429
上一篇: Java程序设计--Swing基础(第1部分)
下一篇: Java程序设计基础- 数组
Jarvis!
博客等级 码龄6年 822粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值