“黑马程序员” GUI 图形用户界面

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------

 

1、Awt  Abstract Window TollKit 抽象窗口工具包

Swing

 

2、控件

 

3、布局管理器

       FlowLayout流式布局:从左到右,Panel默认的布局管理器

       BorderLayout边界布局:上下左右中,Frame默认的布局管理器

       GridLayout网络布局管理器:规则的矩阵

       CardLayout卡片布局;选项卡

       GridBayLayout网络包布局管理器,非规则的矩阵

 

4、

/*

 * 创建图形化界面

 * 1、创建frame窗体

 * 2、对窗体进行基本设置

 * 比如大小、位置、布局

 * 3、定义组件

 * 4.组件通过窗体的add方法添加到窗体中

 * 5、让窗台显示setVisible(true)

 

* 事件监听机制的特点

 * 1.事件源:就是awt包或者swing包中的那些图形界面组件

 * 2.事件    :每一个事件源都有自己特有的对应事件和共性事件

 * 3.监听器:将可以触发某一个事件的动作(不只一个动作)都已经封装到了监听器中

 * 4事件处理

 *

 * 前三者,在java中都已经定义好了,直接获取其对象来用就可以了。

 */

publicstaticvoid main(String[] args) {

       //TODO Auto-generatedmethod stub

       //创建窗体

       Frame f=new Frame("mycat");

       f.setSize(500,200);//窗口大小(横纵)

      

       f.setLocation(100,500);//出现位置

      

       f.setLayout(new FlowLayout());

      

       Button b=new Button("按钮一号");

       b.setSize(50,20);

       f.add(b);

       //实现关闭窗口操作

       f.addWindowListener(new WindowAdapter() {

           publicvoid windowClosing(WindowEvent w) {

              System.out.println("window closing");

              System.exit(0);

           }

//扩展

           publicvoid windowActivated(WindowEvent e) {

              System.out.println("激活窗口");

           }

           publicvoid windowOpened(WindowEvent e) {

              System.out.println("打开窗口");

           }

       });

       btn.addActionListener(new ActionListener() {

           publicvoid actionPerformed(ActionEvent e) {

              System.out.println("button to closing");

              System.exit(0);

           }

       });

       f.setVisible(true);//显示,一般放最后

    }

 

5、/*让按钮具备退出程序的功能

    按钮就是事件源,那么选择addActionListener

    */

       btn.addActionListener(new ActionListener() {

           publicvoid actionPerformed(ActionEvent e) {

              System.out.println("button to closing");

              System.exit(0);

           }

       });

 

 

6、//鼠标停留、点击事件,

//addMouseListenermouseClicked

       //addActionListeneractionPerformed先执行

       btn.addMouseListener(new MouseAdapter() {

           privateintcount=1;

           privateintClick=1;

           publicvoid mouseEntered(MouseEvent e) {

              System.out.println("停留="+count++);

           }

           publicvoid mouseClicked(MouseEvent e) {

              //双击事件

              if(e.getClickCount()==2)

                  System.out.println("双击");

              System.out.println("点击="+Click++);

           }

          

        });

 

7、//获取键盘按下事件

       btn.addKeyListener(new KeyAdapter() {

           publicvoid keyReleased(KeyEvent e) {

              if(e.isControlDown()&&e.getKeyCode()==KeyEvent.VK_C)

                  System.exit(0);

              if(e.getKeyCode()==KeyEvent.VK_ESCAPE)//exc==27=KeyEvent.VK_ESCAPE

              {

                  System.out.println("keyEvent to closing");

                  System.exit(0);

              }

                 

           System.out.println(KeyEvent.getKeyText(e.getKeyChar())+":"+e.getKeyChar()+"=="+e.getKeyCode());

             

           }

       });

 

8、//文本框,只输入数字

txt=new TextField(20);

       txt.addKeyListener(new KeyAdapter() {

           publicvoid keyPressed(KeyEvent e) {

              int code=e.getKeyCode();

              if(!(code>=KeyEvent.VK_0&&code<=KeyEvent.VK_9))

              {

                  System.out.println(KeyEvent.getKeyText(code)+" is wrong");

                  e.consume();//阻止数据进入

              }

           }

       });

 

9、按钮实现获取tf文本框中数据,写入ta文本框中

{

       Publicvoid actionPerformed(ActionEvent e)

{

       String text=tf.getText();

       Ta.setText(text)

       //扩展

       String dirPath= tf.getText();

File dir=new File(dirPath);

If(dir.exists()&&dir.isDirectory)

{

Ta.setText(“”);//清空

       String []names=dir.list();

       For(string name:names)

              Ta.append(name+”\r\n”);

}

Else

{

警告框。

       String info=”你输入信息错误”+ dirPath +”eee”;

       d.setVisible(true);

lab.set(info);

      

}

 

}

}

 

10、窗口(警告框)

Private Labellab=new Label()

       Dialogd=new Dialog(frame,”提示信息”,true);

d.setBounds(400,200,240,130);

d.setLayout(newFlowLayout)

       ButtenokBtn=new butten(“确定”);

       d.add(lab);

       d.add(okBtn);

X

public void windowClosing(windowEvent e)

{

       d.setVisible(false);

}

okBtn

    d.setVisible(false);

 

 

11、菜单栏设计

publicclass MyMenuDemo {

 

    private Framef;

    private MenuBarmb;

    private Menum,subMenu;

    private MenuItemcloseItem,subItem,subItem2;

    MyMenuDemo()

    {

       init();

    }

    publicvoid init()

    {

       f=new Frame("my frame");

       //frame进行基本设置

       f.setBounds(30,500,600,600);

       f.setLayout(new FlowLayout());

      

       mb=new MenuBar();

      

       m=new Menu("文件");

       subMenu=new Menu("子菜单");

      

       subItem=new MenuItem("子条目");

       subItem2=new MenuItem("子条目2");

       closeItem=new MenuItem("退出");

      

       subMenu.add(subItem);

       subMenu.add(subItem2);

       m.add(subMenu);

       m.add(closeItem);

       mb.add(m);

      

       f.setMenuBar(mb);

       myEvent();

       f.setVisible(true);

    }

    privatevoid myEvent()

    {

       //菜单退出

       closeItem.addActionListener(new ActionListener() {

          

           @Override

           publicvoid actionPerformed(ActionEvent e) {

              //TODO Auto-generatedmethod stub

              System.out.println("Menuclosing");

              System.exit(0);

           }

       });

      

       f.addWindowListener(new WindowAdapter() {

           publicvoid windowClosing(WindowEvent w) {

              System.out.println("windowclosing");

              System.exit(0);

           }

       });

    }

   

    publicstaticvoid main(String[] args) {

       //TODO Auto-generatedmethod stub

       new MyMenuDemo();

    }

 

}

12、菜单-文件打开与保存

package com.edu.Tewnty_Two;

 

import java.awt.FileDialog;

import java.awt.Frame;

import java.awt.Menu;

import java.awt.MenuBar;

import java.awt.MenuItem;

import java.awt.TextArea;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

 

 

public class MyMenuDemo {

 

       privateFrame f;

       privateMenuBar mb;

       //文本

       privateTextArea ta;

       //

       privateFile file;

       privateMenu m,m2,subMenu,fileMenu;

      

       privateMenuItem closeItem,subItem,subItem2,clearItem;

       privateMenuItem openItem,saveItem;

       MyMenuDemo()

       {

              init();

       }

       publicvoid init()

       {

              f=newFrame("my frame");

              //对frame进行基本设置

              f.setBounds(30,500,600,600);

              //f.setLayout(newFlowLayout());

             

              mb=newMenuBar();

              ta=newTextArea();

             

              m=newMenu("文件");

              m2=newMenu("清空");

             

              subMenu=newMenu("子菜单");

              fileMenu=newMenu("文件操作");

             

              subItem=newMenuItem("子条目");

              subItem2=newMenuItem("子条目2");

              closeItem=newMenuItem("退出");

              clearItem=newMenuItem("OK");

             

              saveItem=newMenuItem("保存文件");

              openItem=newMenuItem("打开文件");

             

              subMenu.add(subItem);

              subMenu.add(subItem2);

             

              fileMenu.add(openItem);

              fileMenu.add(saveItem);

             

              m.add(fileMenu);

              m.add(subMenu);

              m.add(closeItem);

              m2.add(clearItem);

              mb.add(m);

              mb.add(m2);

              f.setMenuBar(mb);

             

              openDialog=newFileDialog(f,"open file",FileDialog.LOAD);

              saveDialog=newFileDialog(f,"save file",FileDialog.SAVE);

             

              myEvent();

              f.add(ta);

              f.setVisible(true);

       }

       privateFileDialog openDialog,saveDialog;

       privatevoid myEvent()

       {

              //清空文本框

              clearItem.addActionListener(newActionListener() {

                    

                     @Override

                     publicvoid actionPerformed(ActionEvent e) {

                            //TODO Auto-generated method stub

                            ta.setText("");

                     }

              });

             

              //菜单保存

              saveItem.addActionListener(newActionListener() {

                    

                     @Override

                     publicvoid actionPerformed(ActionEvent e) {

                            //TODO Auto-generated method stub

                            if(file==null)

                            {

                                   saveDialog.setVisible(true);

                                   Stringdirpath=saveDialog.getDirectory();

                                   Stringfilename=saveDialog.getFile();

                                   if(filename==null||dirpath==null)

                                          return;

                                   file=newFile(dirpath,filename);

                            }

                            try{

                                   BufferedWriterbufw=

                                          newBufferedWriter(new FileWriter(file));

                                  

                                   Stringtext=ta.getText();

                                   bufw.write(text);

                                   bufw.close();

                            }catch (Exception e2) {

                                   //TODO: handle exception

                                   System.out.println("保存出现错误");

                            }

                     }

              });

              //菜单打开

              openItem.addActionListener(newActionListener() {

                    

                     @Override

                     publicvoid actionPerformed(ActionEvent e) {

                            //TODO Auto-generated method stub

                            openDialog.setVisible(true);

                            Stringdirpath=openDialog.getDirectory();

                            Stringfilename=openDialog.getFile();

                            System.out.println(filename+":"+dirpath);

                           

                            if(filename==null||dirpath==null)

                                   return;

                            ta.setText("");

                            file=newFile(dirpath,filename);

                            try{

                                   BufferedReader bufr=

                                          newBufferedReader(new FileReader(file));

                                   StringlineString=null;

                                  

                                   if((lineString=bufr.readLine())!=null)

                                   {

                                          ta.append(lineString+"\r\n");

                                   }

                                   bufr.close();

                            }catch (IOException e2) {

                                   //TODO: handle exception

                                   System.out.println("出现错误");

                            }

                           

                           

                     }

              });

             

              //菜单退出

              closeItem.addActionListener(newActionListener() {

                    

                     @Override

                     publicvoid actionPerformed(ActionEvent e) {

                            //TODO Auto-generated method stub

                            System.out.println("Menuclosing");

                            System.exit(0);

                     }

              });

             

              f.addWindowListener(newWindowAdapter() {

                     publicvoid  windowClosing(WindowEvent w) {

                            System.out.println("windowclosing");

                            System.exit(0);

                     }

              });

       }

      

       publicstatic void main(String[] args) {

              //TODO Auto-generated method stub

              newMyMenuDemo();

       }

 

}

13、

 

14、

 

15、

 

【6层】一字型框架办公楼(含建筑结构图、计算书) 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
1、资源项目源码均已通过严格测试验证,保证能够正常运行;、 2项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值