201711671233《Java程序设计》第9周学习总结

             201711671233《Java程序设计》第9周学习总结

一、教程学习内容总结

这周主要学习了窗口,常用组件与布局,处理事件,MVC结构,对话框。

 

Java String概述

通过图形用户界面(GUI),用户和程序之间可以方便地进行交互。

组件:Component类的子类或间接子类创建的对象。

容器:Container的子类或间接子类创建的对象。

可以向容器添加组件。Container类提供了一个public方法add(),一个容器可以调用该方法将组件添加到该容器中。

removeAll()方法可以移掉容器中的全部组件,调用remove(Component c)方法可以移掉容器中参数c指定的组件。

容器添加或移掉组件,应让容器调用validate()方法。

 

(一)窗口

窗口:JFrame类是底层容器。

对话框:JDialog类是底层容器。

其他组件必须被添加到底层容器。

窗口默认被系统添加到显示器屏幕上,因此不允许将一个窗口添加到另一个容器中。

JFrame()创建一个无标题的窗口。

菜单条、菜单、菜单项都是窗口常用的组件,都是JComponent类的子类。菜单放在菜单条里,菜单项放在菜单里。

菜单条:JMenubar类创建。JMenubar的一个实例就是一个菜单条。

菜单:JMenu类创建。是JMenuItem类的子类,菜单也是一个菜单项。

菜单项:JMenuItem类。

菜单上的图标:图标类Icon声明一个图标,使用其子类ImageIcon类创建图标。

 

(二)常见组件与布局

常用组件:(都是JComponent类的子类)

JTextField(文本框):在文本框中输入单行文本。

JTextArea(文本区):在文本区中输入多行文本。

JButton(按钮):单击按钮。

JLabel(标签):标签为用户提供提示信息。

JCheckBox(复选框):提供多项选择。复选框右边有个名字,并提供两种状态,一种是选中,一种是未选中。

JRadioButton(单选按钮):提供单项选择。

JComboBox(下拉列表):提供单项选择。在下拉列表中看到第一个选项和旁边的箭头按钮,单击箭头按钮,选项列表打开。

JPasswordField(密码框):在密码框中输入单行密码,密码框的默认回显字符是*。

常见容器:

JPanel面板:使用JPanel创建一个面板,再向这个面板添加组件,然后把这个面板添加到其他容器中。JPanel面板的默认布局是FlowLayout布局。

JTabbedPane选项卡窗格:JTabbedPane容器作为中间容器。向JTabbedPane容器添加一个组件时,JTabbedPane容器就会自动为该组件指定一个对应的选项卡,即一个选项卡对应一个组件。选项卡默认在JTabbedPane容器的顶部,从左向右依次排列。

滚动窗格JScrollPane:滚动窗格只能添加一个组件。可以把一个组件放到一个滚动窗格中,然后通过滚动条来观看该组件。

拆分窗格JSplitPane:拆分窗格就是背分成两部分的容器,有水平拆分和垂直拆分。

JLayeredPane分层窗格:分层窗格分成5层,用来处理重叠问题。

 

常用布局:

FlowLayout布局:居中对齐,按先后顺序从左向右排列,一行排满后转向下一行。

BorderLayout布局:容器使用该布局,容器空间简单划分成东、南、西、北、中五个区域。

CardLayout布局:可以容纳多个组件,这些组件被层叠放入容器中。最先加入容器的是第一张,每次只能显示其中一张,被显示的组件将占据所有的容器空间。

GridLayout布局:把容器划分为若干行乘若干列的网格区域,组件位于这些划分出来的小格中。使用GridLayout布局的容器最多可以添加m×n个组件。每个网格都是相同大小并且强制组件与网格的大小相同。

null布局:空布局可以准确地定位组件在容器中的位置和大小。                                

BoxLayout布局:Box容器称为一个盒式容器,可以利用容器的嵌套,将某个容器嵌入几个盒式容器。

 

(三)处理事件

事件处理模式:事件源、监视器、处理事件的接口。

事件源:能产生事件的对象。

监视器:事件源通过调用相应的方法将某个对象注册为自己的监视器。

处理事件的接口:监视器这个对象会自动调用一个方法来处理事件(对象只有调用方法才能产生行为)。Java规定:为了让监视器这个对象能对事件源发生的事情进行处理,创建该监视器对象的类必须声明实现相应的接口,即必须在类体中重写接口中所有方法,当事件源发生事件时,监视器自动调用被类重写的接口方法。

ActionEvent事件:文本框、按钮。菜单项、密码框和单选按钮。

ItemEvent事件:选择框和下拉列表。

DocumentEvent事件:在文本区进行文本编辑,使文本内容发生变化。

MouseEvent事件:鼠标事件,如鼠标进入组件、退出组件、在组件上方单击鼠标、拖动鼠标等都触发鼠标事件。

焦点事件:组件可以触发焦点事件。

键盘事件:当按下、释放或敲击键盘上一个键时就触发了键盘事件。

窗口事件。

匿名类实例或窗口做监视器。

事件总结:授权模式、接口回调、方法绑定、保持松耦合。

 

(四)MVC结构

模型-视图-控制器简称为MVC。

模型:存储数据的对象。

视图:为模型提供数据显示的对象。

控制器:处理用户的交互操作,对用户的操作做出响应,让模型和视图进行必要的交互。

 

(五)对话框

有模式的对话框:当这个对话框处于激活状态时,只让程序响应对话框内部的事件,阻塞其他线程的执行,用户不能再激活对话框所在程序中的其他窗口,直到该对话框消失不可见。

无模式的对话框:处于激活状态时,能再激活其他窗口,也不阻塞其他线程的执行。

消息对话框,输入对话框,确认对话框,颜色对话框,自定义对话框。

 

二、教程学习中的问题和解决过程

一开始有了很多新的概念,比如窗口、容器、组件、布局等,看了很多次概念,然后看着书上的代码,慢慢理解,然后就明白了。

 

三、学习进度条

 

代码行数

(新增/累计)

博客量

(新增/累计)

学习时间

(新增/累计)

目标

2500行

10篇

200小时

第一周

30

1

10

第二周

30/60

1/2

10/20

第三周

30/90

1/3

10/30

第四周

30/120

1/4

10/40

第五周

30/150

1/5

10/50

第六周

30/180

1/6

10/60

第七周

50/230

1/7

10/70

第八周

100/330

1/8

10/80

第九周

100/430

1/9

10/90

 

四、参考资料

Java2实用教程(第5版)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值