Java GUI编程(图形用户界面编程)

JAVA GUI(图形用户界面) 阅读详情
AI摘要

本文介绍Java GUI编程,GUI即图形用户界面,javax.swing包提供图形组件。重点讲解JFrame窗口组件,包括设置窗体的常用方法、常用组件(标签、单行文本、密码框等),还涉及事件处理和JOptionPane对话框,如消息对话框和确认对话框的不同类型。

一,GUI概述

GUI(Graphical  User  Interface)即图形用户界面,是指采用图形方式显示的用户界面。

为程序提供了图形界面,方便用户操作

javax.swing包中提供了出许多的图形组件

二,JFrame  窗口组件

在窗口组件中添加其他功能组件

JFrame类用来创建窗口;

我们的类可以直接继承该类,实现窗体制作。

1.设置窗体的常用方法:

void setSize(int width, int height);//设置窗口的长宽
void setVisible(boolean b);//该窗口是否可见
void setTitle(String title);//设置窗口名称
void setResizable(boolean resizable);//是否可以更改大小
void setLocation(int x,int y);//定义位置
void setLocationRelativeTo(null);//设置窗口位置,默认是居中的
void setDefaultCloseOperation(int operation);//设置关闭窗口的选项   关闭窗口退出程序
void dispose();//关闭窗口

2.常用组件

(1)标签

标签(JLable)

        标签是容纳文本和图标的控件,通常用来在界面中标识别的控件

构造函数:

        JLable(String text)创建一个带文本的标签

方法:

        setFont(new Font("宋体",Font.BOLD,18));设置字体

(2)单行文本

单行文本(JTextField)

构造方法:

        JTextField(int columns)

方法:

        String getText();//获取文本框中的文本

(3)密码框

密码框(JPasswordField)

构造函数:

        JPasswordField(String text)

        JPasswordField(String text,int columns)

方法:

        char[] getPassword()

(4)多行文本框

多行文本框(JTextArea)

构造函数:

        JTextArea(int rows,int columns)创建哟个指定行数和列数的空文本域

方法:

        String getText()  获得文本域中的文本

        void setFont(Font font)设置文本域中文本的字体

        void setLineWrap(boolean wrap)  是否自动换行,默认为false

如果需要文本区自动出现滚动条,可将文本区对象放入滚动窗格(JScrollPane)中:

JScrollPane scrollPane = new JScrollPane(txtArea)

add(scrollPane)

(5)按钮

按钮(JButton)

构造方法:

        JButton(String text)  创建一个带文本的标签

方法:

        void setBackground(Color bg)  设置按钮的背景色

        void setEnabled(boolean b)  设置启用(或禁用)按钮,由参数b决定

        void setToolTipText(String Text)  设置按钮的悬停提示信息

3.事件处理

事件的监听处理

        组件被点击会触发一个事件,就需要有对时间的监听器

        监听器类型是ActionListener

添加事件监听器(此处为匿名类)

/*
 * Created by JFormDesigner on Sun Mar 09 11:27:22 CST 2025
 */

package EG.Eg3.amend;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import javax.swing.*;

/**
 * @author 25822
 */
public class Eg extends JFrame {
    
    Boolean bz = true;
    Random r = new Random();
    
    public Eg() {
        initComponents();
    }

    private void initComponents() {
        // JFormDesigner - Component initialization - DO NOT MODIFY  //GEN-BEGIN:initComponents  @formatter:off
        label1 = new JLabel();
        textField1 = new JTextField();
        beginbutton = new JButton();
        endbutton = new JButton();
        textField2 = new JTextField();

        //======== this ========
        Container contentPane = getContentPane();
        contentPane.setLayout(null);

        //---- label1 ----
        label1.setText("\u65b0\u7684\u5e78\u8fd0\u513f\u5df2\u7ecf\u4ea7\u751f");
        label1.setFont(label1.getFont().deriveFont(label1.getFont().getSize() + 6f));
        contentPane.add(label1);
        label1.setBounds(85, 25, 180, 35);
        contentPane.add(textField1);
        textField1.setBounds(120, 70, 140, 40);

        //---- beginbutton ----
        beginbutton.setText("\u5f00\u59cb");
        contentPane.add(beginbutton);
        beginbutton.setBounds(new Rectangle(new Point(35, 135), beginbutton.getPreferredSize()));

        //---- endbutton ----
        endbutton.setText("\u505c\u6b62");
        contentPane.add(endbutton);
        endbutton.setBounds(new Rectangle(new Point(245, 140), endbutton.getPreferredSize()));
        contentPane.add(textField2);
        textField2.setBounds(70, 185, 225, 70);

        {
            // compute preferred size
            Dimension preferredSize = new Dimension();
            for(int i = 0; i < contentPane.getComponentCount(); i++) {
                Rectangle bounds = contentPane.getComponent(i).getBounds();
                preferredSize.width = Math.max(bounds.x + bounds.width, preferredSize.width);
                preferredSize.height = Math.max(bounds.y + bounds.height, preferredSize.height);
            }
            Insets insets = contentPane.getInsets();
            preferredSize.width += insets.right;
            preferredSize.height += insets.bottom;
            contentPane.setMinimumSize(preferredSize);
            contentPane.setPreferredSize(preferredSize);
        }
        pack();
        setLocationRelativeTo(getOwner());
        // JFormDesigner - End of component initialization  //GEN-END:initComponents  @formatter:on
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);

        beginbutton.addActionListener(new ActionListener() {
            @Override public void actionPerformed(ActionEvent e) {
               beginbutton.setEnabled(false);//点击开始后不能再点击
                String name = textField2.getText();//获取所给文本
                String[] names = name.split(",");
                bz = true;
                new Thread(new Runnable() {//创建线程
                    @Override public void run() {
                        while (bz){//随机输出姓名
                            try {
                                Thread.sleep(200);
                            } catch (InterruptedException ex) {
                                throw new RuntimeException(ex);
                            }
                            textField1.setText(names[r.nextInt(names.length)]);
                        }

                    }
                }).start();
            }});
        endbutton.addActionListener(new ActionListener() {
            @Override public void actionPerformed(ActionEvent e) {
                bz = false;
                beginbutton.setEnabled(true);//还原循环
            }});

    }

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

    // JFormDesigner - Variables declaration - DO NOT MODIFY  //GEN-BEGIN:variables  @formatter:off
    private JLabel label1;
    private JTextField textField1;
    private JButton beginbutton;
    private JButton endbutton;
    private JTextField textField2;
    // JFormDesigner - End of variables declaration  //GEN-END:variables  @formatter:on
}

上述示例为创建一个随机点名的窗口

4.对话框

JOptionPane对话框
showMessageDialog():消息对话框
主要有五种消息类型,类型不同,图标不同:
ERROR_MESSAGE 错误消息提示
INFORMATION_MESSAGE 信息提示
WARNING_MESSAGE 警告提示
QUESTION_MESSAGE 问题提示
PLAIN_MESSAGE 简洁提示
showConfirmDialog():确认对话框
主要有四种消息类型,类型不同,图标不同:
DEFAULT_OPTION 默认选项
YES_NO_OPTION 是/否选项
YES_NO_CANCEL_OPTION 是/否/取消选项
OK_CANCEL_OPTION 确定/取消

【Java】很全很详细的GUI编程 组件:窗口、弹窗、面板、文本框、列表框、按钮、图片、监听事件、鼠标、键盘事件、破解工具 阅读详情

相关推荐

Java图形用户界面(GUI)编程

本文介绍了Java GUI编程的基础知识、常用组件、事件处理、布局管理器、多线程编程等内容,希望能够帮助开发者更好地理解和应用Java GUI编程。Java Swing支持多种布局管理器,用于定位和管理GUI组件的位置和大小,使得GUI界面具有良好的可扩展性和可维护性。Java Swing提供了事件模型,使用事件监听器来处理用户的事件,可以通过实现监听器来响应事件。Java GUI编程需要使用Java Swing类库,它包含了大量的组件和工具类,可以帮助开发者构建各种类型的桌面应用程序。

吃不胖. 811

JAVA中的GUI

传统的命令行界面(CLI)需要用户记忆和输入命令,而GUI则通过图形元素如窗口、按钮、菜单、对话框等来呈现信息和提供操作选项,使用户可以通过直接点击、拖拽、输入等方式与计算机进行交互。JPanel可以看作是一个空白的面板,你可以将其他组件添加到其中,并对其进行布局、设置风格和添加事件监听等操作。在构造函数中,设置了窗口的标题、大小、默认的关闭操作,并将窗口设置为可见。多任务支持:GUI允许多个应用程序同时运行在屏幕上的不同窗口中,并提供了任务切换和管理的功能,方便用户在不同应用程序之间进行切换和操作。

weixin_69778508的博客 1万+

48、图形用户界面:Java GUI编程指南

本文是一份全面的Java GUI编程指南,涵盖了AWT、Swing和JavaFX三大GUI框架的基础知识与高级特性。内容包括界面构建、事件处理、布局管理、自定义组件、图形绘制、多媒体支持、对话框与窗口管理、样式与主题、拖放功能、剪贴板操作、表单验证、多线程编程、数据绑定、多文档界面(MDI)、图像与视频处理等核心技术。通过丰富的代码示例,帮助开发者掌握如何构建功能丰富、用户友好的Java图形界面应用程序。

prometheus5watch的博客 129

JAVA图形化基础--GUI编程

JavaGUI是Java语言提供的一套图形用户界面开发工具,包括AWT和Swing两个主要库。AWT(抽象窗口工具集)是Java最早的GUI库,提供了跨平台的界面组件,但界面风格受系统影响。Swing则是AWT的增强版,提供更丰富的界面组件和更灵活的自定义机制,同时支持跨平台和外观管理器。合理选择AWT或Swing库可根据具体应用场景决定。

会思想的苇草i的博客 7025

如何进行Java GUI图形用户界面编程

AWT中文译为抽象窗口工具包,是Java提供的用来建立和设置Java的图形用户界面的基本工具。AWT由Java中的java.awt包提供,里面包含了许多可用来建立与平台无关的图形用户界面的类,这些类被称为组件。Java Swing是Java Foundation Classes的一部分,它是试图解决AWT缺点的一个尝试。从这一点上来说,Swing可以说是站在前人的肩膀上了。SWT/JFace象一股清新的风吹入了Java的GUI开发领域,为这个沉闷的领 域带来了勃勃生机。虽然SUN不接纳SWT/JFace作为Java中的一种图形API标准,但它虽然借着Eclipse的优异表现,以不可阻挡之势向前发展着。

【NLP】语言模型的发展历程 (1)

N-gram模型是一种基于统计语言模型的文本分析算法,它用于预测文本中下一个词出现的概率,基于前面出现的n-1个词的序列。这里的n代表序列中元素的数量,因此称为N-gram。Unigram:N=1,每个单词的出现概率独立计算,不考虑上下文。Bigram:N=2,基于前一个单词预测当前单词的联合概率模型。Trigram:N=3,考虑前两个单词来预测当前单词的联合概率模型,更复杂但可能更准确。

酒酿小圆子呀~ 1668

Java 图形用户界面设计——GUI编程

GUI编程

weixin_57807561的博客 2924

亚马逊SP-API授权实战:从OAuth流程到Refresh Token获取

本文详细解析了亚马逊SP-API授权流程,从OAuth认证到Refresh Token获取的全过程。通过实战经验分享,帮助开发者快速掌握Marketplace Appstore、Website Workflow和自行授权三种方式,解决常见错误如MD5100和MD9999,并提供了安全存储Refresh Token的最佳实践。

weixin_30379531的博客 518

Java--GUI图形用户界面编程(计算器,贪吃蛇)

图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。(百度百科)AWTSwing界面不美观需要jre环境才能使用AWT(Abstract Window Toolkit)抽象窗口工具包,该包提供了一套与本地图形界面进行交互的接口,是Java提供的用来建立和设置Java的图形用户界面的基本工具。AWT是Java基础类 (JFC)的一部分,为Java程序提供图形用户界面(GUI)的标准API。

likehack的博客 3240

三、使用HM进行简单的视频隐写demo

三、使用HM进行简单的视频隐写前言一、实验环境二、实验思路三、实验过程3.1 提取原始载体3.2 使用LSB隐写算法进行隐写3.3 放回含密载体3.4 提取含密载体3.5 使用LSB提取算法进行比对四、碰到的问题以及解决思路4.1 块的结构体发生变化4.1.1 产生的原因4.1.2 解决方法4.2 一个有趣的现象4.2.1 产生的原因4.3 视频产生较大失真4.3.1 产生的原因4.3.2 解决方法五、总结 前言 在前两篇博客中介绍了基于HEVC/H.265视频编解码器的视频隐写的基本思路,本文将详细记录

杨酬勤的博客 1792

【大模型】一图看懂3D因果卷积!

本文将系统性地介绍从1D到3D的因果卷积原理,通过直观的动图演示帮助读者理解其工作机制,并重点探讨3D因果卷积在大规模视频生成中的独特价值和应用前景。

xian0710830114的专栏 2199

Java编程语言-图形用户界面GUI

  1.20图形用户界面GUI CLI:Command Line User Interface(命令行用户接口) 就是常见的Dos命令行操作。   GUI:Graphical User Interface(图形用户接口) 用图形的方式,来显示计算机操作的界面。 Java为GUI提供的对象都存在java.Awt和javax.Swing两个包中。 java.Awt包:Abstr...

JacksonWu's Blog 313

Qt之QMqtt 发送图片数据

MQTT是一个基于客户端-服务器的消息发布/订阅传输协议;MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛;在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT);其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用;

Ilson_的博客 1437

Java 从入门到精通(续集16)——图形用户界面(GUI)编程

Java 中的图形用户界面(GUI)编程是指使用 Java 提供的 GUI 组件和框架来实现可视化窗口程序。Java 中主要使用的 GUI 组件包括 JFrame、JPanel、JButton、JLabel 等类。

Jamson 542

Yolo8行人车辆目标检测实战分享 完整项目代码可直接运行

Yolo8行人车辆目标检测实战分享 完整项目代码可直接运行

1294

从Overleaf上导出Latex论文发布到arxiv详细教程(常见问题与解决)

如果是做cv的论文请选择“Computer Vision and Pattern Recognition”,选择“Artificial Intelligence”可能会被on hold,貌似这个指的是传统的人工智能?我用公司邮箱注册发布一篇论文,一个多月还是“on hold”状态,换成edu邮箱第二天就被发布了。3、有可能是subject class选错了,编辑会帮你手动选择,然后发一封邮件告知你解除……报错缺失bbl等文件,这是因为从Menu中下载的话,是没有bbl文件的。论文被on hold。

沉迷单车的追风少年 3586

java GUI编程 (图形用户界面编程)

本文介绍了Java GUI编程基础,主要包括Swing组件使用和事件处理机制。首先解释了GUI的概念及其优势,详细说明了Swing工具包中的常用容器组件如JFrame,以及各类交互组件如JLabel、JTextField、JButton等的创建和使用方法。其次阐述了Java事件处理的基本原理,包括事件监听器的实现方式。最后讲解了内部类和匿名内部类的特性及应用场景,强调了它们在封装性和实现类多重继承方面的优势。文章为Java图形界面开发提供了全面的入门指导。

2301_78369271的博客 764

13、离散时间系统建模与分析

本文系统介绍了离散时间系统的建模与分析方法,涵盖连续时间模型的离散化过程、系统稳定性判断准则、输入输出模型转换方法以及有限脉冲响应和阶跃响应模型的应用。通过多个示例详细展示了不同系统在离散化过程中的特性变化,并探讨了采样间隔对系统动态特性的影响。此外,文章还分析了时间延迟的处理方法,并总结了关键知识点及操作步骤,为离散时间系统的实际应用提供了理论基础和实践指导。

2w3e4r5t6y的博客 189

Java图形用户界面编程(GUI)部分知识

Java图形用户界面编程(GUI) ---容器与组件   ···首层容器:①、JWindow(窗体)②、JFrame(自带工具栏)  ③、JOptionPane(弹出框) ④、JApplet ···中间层容器: ---简介: ---在Java中,基于GUI的程序需要使用javax.swing包和java.awt包中的类才能执行。 ····AWT的类是使用原始的G

qq_34161386的博客 453

深度学习工具包 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")

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

JAVA--图形用户界面编程(GUI)

JAVA–图形用户界面编程(GUI) 文章目录JAVA--图形用户界面编程(GUI)图形用户界面编程的概述GUI编程基础AWT中主要类的继承关系Swing中主要类的继承关系常用组件与容器顶层容器(JFrame、JDialog)中间容器标签按钮文本框布局管理FlowLayout布局管理器BorderLayout布局管理器GridLayout布局管理器事件的类型和处理方法综合联动测试 图形用户界面编程的概述 1、图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指

Ronin__L的博客 1079

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

java gui 设计计算器_使用Java的GUI图形用户界面编程设计并编写一个计算器程序...

展开全部import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swi...

weixin_39571938的博客 830

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

黑马程序员—java基础—GUI图形用户界面编程

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------   GUI图形用户界面编程,就是使用GUI编程 GUI是图形用户接口,CLI是命令行用户接口 GUI: •Graphical User Interface(图形用户接口)。 •用图形的方式,来显示计算机操作的界面,这样更方便更直观。 CLI: •Command l

Chenhaiyang__ith的博客 782

java11 - GUI图形用户界面编程

一、JavaSwing界面设计参考教程 二、布局管理器 三、绝对布局 import java.awt.Color; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.awt.event.Mo...

anna7513的博客 388

JAVA—GUI(图形用户界面)编程

import java.awt.*; import java.awt.event.*; class Demo { private Frame f; private Button but; private TextField tf; static int i = 0; Demo() { init(); } public void init() { f = new Fr

MyHeaven7的博客 1042

java界面编程教程_java11 - GUI图形用户界面编程

import java.awt.Color;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.event.WindowEvent;impo...

weixin_33318791的博客 241

Java GUI可拖拽式图形用户界面编程,WindowBuilder工具的安装使用教程

使用eclipse做图形化界面GUI设计,很多人喜欢用WindowBuilder直接拖拽,非常方便。WindowBuilder免费安装,安装的方法也非常简单。 首先,记住一个网址 http://download.eclipse.org/windowbuilder/WB/integration/4.8/ 很多人去到官网不知道下载哪个版本,可以在eclipse中查看 关于Eclipse IDE的...

刘先生倒了u的博客 7564
上一篇: Java线程
下一篇: Java内部类
sql12345678911
博客等级 码龄2年 190粉丝 34原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值