chp9.ppt

Size: px
Start display at page:

Download "chp9.ppt"

Transcription

1 Java 软件设计基础 高级 GUI 设计与多媒体技术

2 1. 布局设计 布局概述 java.awt FlowLayout BorderLayout CardLayout GridLayout GridBagLayout java.swing BoxLayout ScrollPanelLayout ViewportLayout OverLayout

3 FlowLayout 布局策略 将容器的组件按照加入的先后顺序从左至右依次排列, 一行排满后就转到下一行继续从左至右顺序排列, 每一行中的组件都居中排列, 组件间默认的水平和垂直间隙是五个像素 FlowLayout 是 JPanel 与 Applet 默认的布局管理策略 构造方法 FlowLayout() 创建一个 FlowLayout 居中布局, 组件间水平和垂直间隙均为 5 个像素 FlowLayout(int align) 创建一个 FlowLayout 布局, 对齐方式为 align,, 组件间水平和垂直间隙均为 5 个像素 FlowLayout(int align, int h, int v) 创建一个 FlowLayout 布局, 对齐方式为 align,, 组件间水平和垂直间隙分别为 h 和 v 个像素

4 示例 import java.awt.*; import javax.swing.*; public class Flows extends JFrame{ private JButton but1,but2,but3; public Flows(){ super("flowlayout 演示程序 "); FlowLayout layout = new FlowLayout(FlowLayout.CENTER); Container c = getcontentpane(); c.setlayout(layout); layout.sethgap(8); but1= new JButton("left"); but2= new JButton("center"); but3= new JButton("right"); c.add(but1); c.add(but2); c.add(but3); setsize(300,100); show(); } public static void main(string args[]){ Flows app = new Flows(); } }

5 BorderLayout 布局策略 将窗口分为 North/East/South/West/Center 五个区域, 中间的区域最大 当哪个区域不放置组件时, 其空间就分配给其他区使用 每加入一个组件都应该指明添加到哪个区域 BorderLayout 也称为边界布局管理器, 是 Window Frame 和 Dialog 默认的布局管理策略 构造方法 BorderLayout() 创建一个 BorderLayout BorderLayout(int h, int v) 创建一个 BorderLayout 布局, 组件间水平和垂直间隙分别为 h 和 v 个像素 一般方法 add(component comp, Object con) 加入组件 comp,con con 指明组件被加入的位置

6 实例

7

8

9 CardLayout 布局策略 可实现多个组件在同一容器区域内重叠放置 交替显示 通过用户的操作可将组件一个接一个显示出来, 即容纳多个组件的同时只能从这些组件中选出一个来显示, 这个被显示的组件将占据所有的容器空间 CardLayout 也称为卡式布局管理器 构造方法 CardLayout() 创建一个 CardLayout CardLayout(int h, int v) 创建 CardLayout 布局, 组件间水平和垂直间隙分别为 h 和 v 个像素 一般方法 first(container c) 显示 Container 中的第一个对象 last(container c 显示 Container 中的最后一个对象 previous(container c) 显示 Container 中的上一个对象 next(container c) 显示 Container 中的下一个对象 add(string t, Component c) 将组件 c 加到容器中并指定与 c 对应的选项卡文本提示为 t

10 实例

11

12 GridLayout 布局策略 在一个二维网格中布置组件 将容器划分为若干行若干列的网格区域, 每个网格的大小相等, 组件就位于这些划分出来的小格中, 一个网格可以放置一个组件 组件可被依次的放在第一行第一列 第一行第二列 的顺序进行 通过在一个网格中放置容器, 可以实现嵌套 GridLayout 也称为网格布局管理器, 该布局比较灵活, 划分多少网格由程序自由控制, 组件定位也比较精确 构造方法 GridLayout() 创建一个 GridLayout 布局 GridLayout(int r, int c) 创建一个 r 行 c 列的 GridLayout 布局 GridLayout(int r, int c, int h, int v) 创建一个 r 行 c 列的 GridLayout 布局, 组件间水平和垂直间隙分别为 h 和 v 个像素

13 实例

14 GridBagLayout 布局策略 采用网格的形式来布置组件, 允许指定的组件跨多行或多列, 同时允许组件部分重叠 组件的位置和大小由 GridBagConstraints 类的对象实例决定 GridBagConstraints 类规范组件使用 GridBagLayout 布局管理器的限制条件 GridLayout 也称为网格包布局管理器, 是 Java 提供的最灵活 最复杂的布局管理器之一 构造方法

15 GridBagLayout 的方法 GridBagLayout() 创建一个 GridBagLayout 布局 setconstrains(component GridBagConstraints cons) add(component comp, Object cons) comp, GridBagConstraints 的属性 设置网格包约束条件,comp, 是被加入的组件, 并用 cons 指定为 GridBagConstraints 类的一个实例 添加组件, 并用 cons 指定 GridBagConstraints 类的一个实例 fill Anchor Insets Grid Gridy gridwidth girdheight weightx weighty 当组件比所在网格小时的填充方式 当组件小于显示区域网格时决定组件放置的位置填充组件和网格边缘间的部分, 负值导致组件延伸到网格单元的外边 指定组件的左上角所在的行和列 指定组件显示区域所占行数和列数 指定列之间和行之间用来填充额外空间的权值 NONE, HORIZONTAL, VERTICAL, BOTH CENTER( 默认值 ), NORTH, NORTHEAST, EAST, SOUTH, SOUTHEAST, SOUTHWEST, WEST, NORTHWEST 默认为 insets(0,0,0,0),, 四个参数分别代表上下左右 第一行或第一列均用 0 表示 整数, 值为 Remainder 表示组件为当前行或列的最后一个组件,Relative, 则表示紧挨着当前行或列组件后 整数

16 实例 import java.awt.*; import java.awt.event.*; public class GridBags extends JFrame{ public static void main(string args[]){ Frame f = new Frame("GridBagLayout"); GridBagLayout g1 = new GridBagLayout(); GridBagConstraints con = new GridBagConstraints(); con.fill = GridBagConstraints.HORIZONTAL; f.setlayout(g1); Button but1 = new Button("Data input"); Button but2 = new Button("Data modified"); Button but3 = new Button("Data query"); Button but4 = new Button("Data print"); Button but5 = new Button("Data delete"); g1.setconstraints(but1,con); con.weightx = 1.2;f.add(but1); g1.setconstraints(but2,con);f.add(but2); g1.setconstraints(but3,con);f.add(but3); con.gridwidth = GridBagConstraints.REMAINDER; g1.setconstraints(but4,con);f.add(but4); g1.setconstraints(but5,con);f.add(but5); f.setsize(250,100); f.setbackground(color.cyan); f.setvisible(true); } }

17 BoxLayout 布局策略 有垂直和水平两种排列方式, 组件加入的先后顺序为从左 ( 上 ) 到右 ( 下 ), 容器两端是剩余的空间 在策划程序布局时, 也可以通过盒式布局的嵌套达到目的 java.swing 中提供的 Box 类是 Container 类的子类, 据此创建的容器称为盒式容器, 默认布局即为 BoxLayout 且无法更改 又称为盒式布局管理器, 在 java.swing.border 包中 构造方法 BoxLayout(Container con, int axis) 创建 BoxLayout 布局, 参数 axis 决定该布局是行型还是列型布局, 其有效值是 BoxLayout.X-AXIS 和 BoxLayout.Y-AXIS

18 一般方法 getlayoutalignmentx(container con) getlayoutalignmenty(container con) setlayoutalignmentx(container con) setlayoutalignmenty(container con) LayoutContainer(Container con) 获得容器沿 X 轴的对齐方式 : 行排列 获得容器沿 Y 轴的对齐方式 : 行排列设置容器沿 X 轴的对齐方式 : 行排列 设置容器沿 Y 轴的对齐方式 : 行排列设置 con 窗口的布局方式为 BoxLayout 布局 Box.createHorizontalBox() 构建一个行型盒式布局的 Box 容器组件 Box.createverticalBox() 构建一个列型盒式布局的 Box 容器组件 Box.createHorizontalStruct(int width) Box.createverticalStruct(int height) 构建一个不可见的宽度为 width 的水平 Struct 类型支撑对象来控制组件之间的距离构建一个不可见的宽度为 width 的水平 Struct 类型支撑对象来控制组件之间的距离 Box.createHorizontalGlue() 构建一个水平方向的 Glue 组件 Box.createverticalGlue() 构建一个垂直方向的 Glue 组件

19 import 实例 java.awt.*; import java.awt.event.*; import javax.swing.*; public class Boxes extends JFrame{ public Boxes(){ super("boxlayout"); final int SIZE = 3; Container c = getcontentpane(); c.setlayout(new BorderLayout(30,30)); Box boxes[ ] = new Box[4]; boxes[0] = Box.createHorizontalBox();boxes[1] = Box.createVerticalBox(); boxes[2] = Box.createHorizontalBox();boxes[3] = Box.createVerticalBox(); for(int i=0;i<size;i++) boxes[0].add(new JButton("class"+i)); for(int i=0;i<size;i++) boxes[1].add(new JButton("grade"+i)); for(int i=0;i<size;i++) boxes[2].add(new JButton("classroom"+i)); for(int i=0;i<size;i++) boxes[3].add(new JButton("restroom"+i)); c.add(boxes[0],borderlayout.north);c.add(boxes[1],borderlayout.west); c.add(boxes[2],borderlayout.south);c.add(boxes[3],borderlayout.east); setsize(350,300); show(); } public static void main(string args[]){ Boxes bb = new Boxes(); bb.addwindowlistener(new WindowAdapter(){ public void windowclosing(windowevent e){system.exit(0);} }); } }

20 2. 菜单组件 菜单栏 用来管理菜单, 只能被添加到 Frame 对象中 作为整个菜单的根基不参与交互操作 Java 中, 应用程序的菜单都包含在菜单栏对象中 在 awt 中由 MenuBar 负责创建, 在 swing 中由 JMenuBar 负责创建 构造方法与一般方法 菜单 JMenuBar 类 MenuBar 类 JMenuBar() 创建一个空菜单栏 setjmenubar(jmenubar menu) 将菜单栏添加到窗口的菜单栏区域 MenuBar() 创建一个空菜单栏 add(menu m) 将一个 Menu 对象 m 添加到引用的 MenuBar 对象中 用来存放与整合菜单项的组件 菜单可以是单层的菜单, 也可以为多层结构 awt 中由 Menu 负责创建,swing 中由 JMenu 负责创建

21 构造方法与一般方法 JMenu 类 Menu 类 JMenu() 创建一个无标签的菜单对象 JMenu(String menuname) 创建一个菜单名为 menuname 的菜单对象 add(string s) 向菜单增加指定的选项 getitem(int n) 获取指定索引处的菜单选项 getitemcount() 获取菜单选项数目 add(jmenuitem item) 将 item 添加到引用的菜单对象上 addseparator() 在目前位置插入一条分隔线 Menu() Menu(String menuname) add(menuitem item) 创建一个无标签的菜单对象创建一个菜单名为 menuname 的菜单对象 将 item 添加到引用的菜单对象上 addseparator() 在目前位置插入一条分隔线

22 菜单项 是菜单系统的基本组件, 是用户最终选择的项目 在 awt 中由 MenuItem 负责创建, 在 swing 中由 JMenuItem 负责创建 菜单项本身也可以是菜单, 称为子菜单 菜单项也可以使用带复选框或单选按钮的菜单项, 分别是 : awt: CheckBoxMenuItem RadioButtonMenuItem swing:jcheckboxmenuitem JRadioButtonMenuItem 例 : 创建单选按钮菜单项和创建复选框菜单项

23 构造方法与一般方法 : JMenuItem 类 MenuItem 类 JMenuItem(String s) 创建名为 s 的菜单项 JMenuItem(String s,icon i) 创建名为 s 图标为 i 的菜单项 JRadioButtonMenuItem(String s) 创建标题为 s 带单选按钮的菜单项 JCheckButtonMenuItem(String s) 创建标题为 s 带复选框的菜单项 setenabled(boolean b) 设置当前菜单项是否可被选择 getlabel() 获取菜单项名字 getkeystroke(char keychar) 返回一个字符型的 KeyStroke 对象 setaccelerator(keystroke k) 为菜单项设置快捷键 MenuItem(String s) 创建名为 s 的菜单项 getactioncommand() 返回菜单项对象所产生的动作事件关联的命令名称 disable() 设置当前菜单项不可用 JCheckButtonMenuItem(String s) 创建标题为 s 带复选框的菜单项 getstate() 获取复选框的状态 setstate(boolean b) 设置复选框的状态

24 弹出式菜单 不固定在菜单栏中, 而是可以四处浮动显示, 依附于某个容器或组件, 平时并不显示, 在单击鼠标右键时显示 在 awt 中由 PopupMenu 负责创建, 在 swing 中由 JPopupMenu 负责创建 菜单创建步骤 创建菜单栏对象, 并将其加入到所建的框架中 : 创建菜单及其子菜单

25 通过 Action 对象新建菜单项并添加事件监听器 将菜单项加入到子菜单或菜单中, 将子菜单加入到菜单中, 将菜单加入到菜单栏中 实例

26 续 JMenuItem filenew = new JMenuItem( New ); JMenuItem fileopen = new JMenuItem( Open ); JMenuItem filesave = new JMenuItem( Save ); JMenuItem fileexit = new JMenuItem( Exit ); filemenu.add(filenew); filemenu.add(fileopen); filemenu.add(filesave); filemenu.add(fileexit); bar.add(filemenu); fileexit.addlistener(new ActionListener(){ public void actionperformed(actionevent e){ System.exit(0); } }); JMenu editmenu = new JMenu( Edit ); JMenuItem copymenu = new JMenuItem( Copy ); JMenuItem pastemenu = new JMenuItem( Paste ); JMenuItem cutmenu = new JMenuItem( Cut ); JMenuItem selectmenu = new JMenuItem( Select ); editmenu.add(copymenu); editmenu.add(pastemenu); editmenu.add(cutmenu); editmenu.addseparator(); editmenu.add(selectmenu); bar.add(editmenu);

27 续 } JMenu formatmenu = new JMenu( Format ); JMenuItem colormenu = new JMenuItem( Color ); JMenuItem fontmenu = new JMenuItem( Font ); formatmenu.add(colormenu); formatmenu.add(fontmenu); bar.add(formatmenu); setsize(300,200); show(); } public static void main(string args[]){ MenuExam mm = new MenuExam(); mm.addwindowlistener(new WindowAdapter(){ public void windowclosing(windowevent e){ System.exit(0); } });

28 3.swing 组件 概述 swing 组件与 awt 组件的比较 swing 组件在 awt 基础上构建起来的, 基于 awt 的事件处理机制 ; 所以完全舍弃 awt 包不太可能 ; swing 组件几乎都是轻量级组件 swing 采取了 模型 - 视图 - 控制器 (MVC: Model-View-Controller) 的设计范式, 其中模型用来保存内容, 视图用来显示内容, 控制器用来控制用户输入 新版的 swing 包可能与旧版不完全兼容 ; awt 包的运行速度比 swing 快, 但 swing 的功能更趋于完善 采用 swing 进行 GUI 设计的一般流程 引入 swing 包, 基于使用感觉选择合适的外观并设置顶层容器 ; 向容器内添加并设置组件 ; 在组件周围添加辅助属性并进行事件处理

29 swing 中的包 javax.swing javax.swing.border javax.swing.colorchooser javax.swing.event javax.swing.plaf javax.swing.plaf.basic javax.swing.plaf.metal javax.swing.table javax.swing.text javax.swing.text.html javax.swing.text.html.parser javax.swing.text.rtf javax.swing.tree javax.swing.undo com.sun.javax.swing.plaf.motif com.sun.javax.swing.plaf.windows com.sun.javax.swing.plaf.gtk swing 组件和实用工具 swing 轻组件的边框 JColorChoose 的支持类 / 接口事件和监听器类抽象类, 定义 UI 代理的行为实现所有标准界面样式公共功能的基类用户界面代理类, 实现 Metal 界面样式 JTable 组件的支持类支持文档的显示和编辑支持显示和编辑 html 文件 html 文件的分析器类支持显示和编辑 RTF 文件 JTree 组件的支持类支持取消操作用户界面代理类, 它们实现 Motif 界面样式用户界面代理类, 它们实现 Windows 界面样式用户界面代理类, 它们实现 GTK 界面样式

30 swing 包中的类层次结构

31 swing 组件的分类 按照功能划分 基本控件 : 实现人机交互的基本组件 包括 JButton JcomboBox JList JMenu JSlider JTextField JTexAtrea JPasswordField; 顶层容器 : 包括 JFrame JApplet JDialog JWindow; 中间容器 : 涵盖 JPanel JScrollPane JSplitPane JLayeredPane JToolBar; 特殊容器 : 在 GUI 上起特殊作用的中间层, 如 JInternalFrame( 内部窗件 ) JRootPane 按 swing 组件对信息的可编辑与否划分 不可编辑信息的显示 : 如 JLabel JProgressBar ToolTip; 可编辑信息的显示 : 如 JTextField JTextArea JPasswordField JColorChooser JFileChooser JTable

32 组件常用方法 组件的颜色 组件背景色的设置方法 : public void setbackground(color c) 组件前景色的设置方法 : public void setforeground(color c) 组件背景色的获取方法 : public Color getbackground() 组件前景色的获取方法 : public Color getforeground() 上述方法中都涉及 Color 类,Color 类是 java.awt 包中的类, 该类窗件的对象称为颜色对象,Color 类的构造方法如下 : public Color(int red, int green, int blue) 其中 red green blue 的取值在 0~255 之间

33 组件的字体 组件字体的设置方法 : public void setfont(font f) 组件字体的获取方法 : public void getfont() 上述方法用到了 java.awt 包中的 Font 类, 该类的构造方法如下 : public Font(String name, int style, int size) name: 字体名字, 如果系统不支持字体的名字, 将取默认名字创建字体对象 ; style: 字体样式, 有效取值为 Font.BOLD Font.PLAIN Font.ITALIC Font.ROMAN_BASELINE Font.CENTER_BASELINE Font.HANGING_BASELINE Font.TRUETYPE_FONE; size: 字体大小, 单位是磅 获取系统中可以提供的字体名字, 可以通过 GraphicsEnvironment 对象调用 getavailablefonefamilynames() 方法将可用字体名称存放到字符串数组中

34 组件的边框 : 组件边框的设置方法 : public void setborder(border b) 组件边框的获取方法 : 默认情况下组件的边框是黑边矩形 组件透明 public Border getborder() 设置组件的透明性 : public void setopaque(boolean isopa) isopa 取 false 时组件为透明, 取 true 时被设置为不透明 ; 获取组件的透明性 : public boolean getopaque() 组件透明时返回值为 false, 否则返回值为 true;

35 组件的大小与位置 public void setsize(int width, int height) 设置组件的大小,width 指定组件的宽度,height 指定组件的高度 public void setlocation(int x, int y) 设置组件在容器中的位置 public Dimension getsize() 返回一个 Dimension 对象下组件的宽度和高度值 public Point getlocation() 返回一个含有成员变量 x 和 y 的 Point 对象的引用,x 和 y 就是组件在容器中的坐标 public void setbounds(int x, int y, int width, int height) 设置组件在容器中的位置和组件的大小 public Rectangle getbounds() 返回一个含有成员变量 x y width 和 height 的 Rectangle 对象的引用

36 组件的激活与可见性 public void setenable(boolean b) 设置组件是否可被激活, 当 b 为 true 时组件可被激活, 否则组件不可激活 public void setvisible(boolean b) 设置组件在该容器中的可见性, 当 b 为 true 时组件可见, 否则组件不可见 实例

37

38

39 JFrame 窗体 JFrame 是 GUI 中的一个框架容器 javax.swing 包中的 JFrame 是 java.awt 包中 Frame 类的子类 构造方法 : JFrame() 创建一个不含标题的新 JFrame 类窗体对象 JFrame(String s) 创建一个标题为 s 的新 JFrame 类窗体对象 一般方法 : setsize(int width, int height) 设置 JFrame 对象的宽和高 setbackground(color c) 设置 JFrame 对象的背景色 setvisible(boolean b) 设置 JFrame 对象的可见性 setresizable(boolean b) 设置 JFrame 对象是否可以改变大小 JMenuBar getmenubar() 获得窗口中的菜单栏组件 remove(component c) 将窗口中指定的组件移除 setdefaultcloseoperation(int op) setbounds(int x, int y, int width, int height) 单击窗体关闭按钮时的默认操作 设置窗口的坐标和大小

40 使用 JFrame 的流程 当应用程序需要一个窗口时, 可使用 JFrame 或其子类创建一个对象, 窗口默认的被系统添加到显示器屏幕上 JFrame 窗体通过调用方法 getcontentpane() 得到它的内容面板 将组件添加到 JFrame 窗体的内容面板中去 标签与文本组件 标签组件 JLabel 大体与 Label 一致, 但它允许添加图像, 而且当鼠标的光标停留在标签位置时会显示一段文字提示 构造方法 : JLabel() 创建没有名字的标签对象 JLabel(String s) 创建名字为 s 的标签对象 JLabel(Icon icon) JLabel(String s, int align) 创建具有图标 icon 的标签对象, 图标左对齐 创建名字为 s 对齐方式为 align 的标签对象

41 一般方法 文本组件 gettext() 获取标签名字 seticon(icon icon) 设置标签图标 settext(string s) 设置标签对象的文字 setalignment(int align) 设置标签对象的对齐方式 JTextField 类 : 定义一个可以输入单行文字的矩形区域文本框 ; JTextField() 创建一个空文本框对象 JTextField(String s) 创建一个内容为 s 的文本框对象 JTextField(String s, int n) 创建一个内容为 s 列为 n 的文本框对象 int getcolumns() 获得文本框对象的列数 setcolumns(int n) 设置文本框对象的列数 setfont(font f) 设置文本框的字体 addactionlistener(actionlistener e) 将监听者注册给文本框对象

42 JTextArea 类 : 定义一个可以输入单行文字的矩形区域文本框 ; getcolumns() 获得对象的列数 seteditable(boolean b) 指定文本域的可编辑性 setalignment(int align) seticon(icon icon) settext(string s) 设置文字 JPasswordField 类 : 定义一个密码框对象 事件机制 事件源 设置文本域的对齐方式设置图标 setechochar(char c) 设置回显字符 char[ ] getpassword() 返回密码框中的密码 能够产生时间的对象都可以称为事件源, 如文本框 按钮 下拉式列表等等

43 监听器 通过对事件源进行监听, 一以便对发生的事件做处理 事件源通过调用相应的方法注册相应的监听器 对于注册了监听器的对象, 系统将自动调用相应的事件类创建该类事件的实例, 并通知监听器 处理事件的接口 当事件源发生事件时, 接口立刻通知监听器自动调用实现的某个接口方法, 接口方法规定了怎样处理事件的操作 实例 :

44

45

46 按钮组件 AbstractButton 类派生出两个组件 : JButton 组件 :swing 按钮 ; JToggleButton 组件 : 单选按钮 (JRadioButton) 和复选框 (JCheckButton) 的父类 JButton 类的构造方法 : JButton() 构造无标题按钮对象 JButton(String s) 构造标题为 s 的按钮对象 JButton(Icon icon) JButton(String s, Icon icon) JButton 类的一般方法 : 构造图标为 icon 的按钮对象 构造标题为 s 图标为 icon 的按钮对象 addactionlistener(actionlistener e) 给按钮对象增加动作监听器, 即注册 removeactionlistener(actionlistener e) 移去按钮上的监听器 settext(string s) 设置文字

47 gettext() 获取按钮标签文字 seticon(icon icon) 实例 设置按钮图标 geticon() 获取按钮图标 setenabled(boolean b) 设置当前按钮的可用性 inselected() 获取按钮状态 sethorizontaltextposition(int textposition) setverticaltextposition(int textposition) 设置按钮名相对水平位置 (LEFT/CENTER/RIGHT) 设置按钮名相对垂直位置 (TOP/CENTER/BOTTOM)

48

49

50 复选框与单选按钮 JCheckButton 构造方法 JCheckBox() 创建一个无标签复选框对象 JCheckBox(String s) 创建一个标签为 s 的复选框对象 JCheckBox(String s, Icon icon) 一般方法 JRadioButton 创建一个标签为 s 图标为 icon 的复选框对象 JCheckBox(String s, boolean b) 创建一个标签为 s 状态为 b 的复选框对象 void additemlistener(itemlistener i) 注册 ItemListener 监听器 public boolean isselected() 返回复选框状态 public void setselected(boolean b) 设置复选框状态 Java 提供 ButtonGroup 类为单选按钮类提供多选一功能, 当创建了若干个单选按钮后, 需要将这些按钮添加到 ButtonGroup 的实例中去 JRadioButton 构造方法与一般方法与复选框类似, 略

51 复选框与单选按钮事件 实例 : 这两种组件引发的事件由 ItemEvent 类派生, 该类包含了一个 ITEM_STATE_CHANGE 事件 ItemEvent 类的主要方法 :»Object.getItem() 方法 : 告知用户是哪个选择项的状态发生变化 ;»int getstatechange() 方法 : 是用户知道选中了哪个选项

52

53 下拉列表组件 下拉列表 (JComboBox) 构造方法 JComboBox() 创建空下拉列表框 JComboBox(Vector vect) JComboBox(ComboBoxModel model) 一般方法 使用向量表创建一个下拉列表对象从已有的 model 获得选项创建下拉列表对象 JComboBox(Object[ [ ] items) 使用数组创建下拉列表对象 void addactionlistener(actionlistener e) 注册事件对象给 ActionListener void additemlistener(itemlistener e) 注册事件对象给 ItemListener void additem(object obj) Object getitemat(int index) 添加选项获取指定位置的选项 int getitemcount() 获得当前选项的数目 public Object getselecteditem() 获得被选项

54 void seteditable(boolean b) 设置是否可以编辑 int getselectedindex() 获取被选中项的索引 void removeallitems() 移除全部选项 void removeitemat(int index) 移除索引为 index 处的选项 void remove(component comp) 实例 移除指定的组件

55

56 列表 (JList) 构造方法 JList() 创建一个空列表对象 JList(Vector vect) 一般方法 实例 使用向量表创建一个列表对象 JList(Object[ [ ] items) 使用数组创建一个列表对象 int [ ] getselectedindices() 获得被选取的多个项 int getselectedindex(int i) 获得选取的单个项 void setvisiblerowcount(int num) 设置可见的列表选项 void addlistselectionlistener(listselectionlistener e) 注册监听器 int getvisiblerowcount() 获得可见的列表选项值

57

58

59 表格组件 JTable 是 Swing 新增的组件, 主要功能是将数据以二维表格的形式显示出来 JTable() 创建一个默认模式的表格对象 JTable(Object data[ ][ ], Object columnname[ [ ]) JTable(TableModel dm, TableColumnModel cm, TableSelectionModel sm) 创建一个表格对象, 用来显示二维数组 data 中的值, 其列名称为 columnname 构造表格对象, 使用 dm 作为数据模型 cm 作为列模型和 sm 作为选择模型对其进行初始化 一般方法 getcontentpane(). 属性 repaint(); 获取设置框架中 contentpane 面板对象下的属性值 表格更新显示 getrowcount(); 获取表格行数 getcolumncount(); 获取表格列数 getcolumnname(int col); 获取表格某列名字

60 getvalueat(int row, int col) setvalueat(object value, int row, int col) 注意 : 用户在表格单元中输入的数据都被认为是一个 Object 对象 ; 表格中的数据将以行和列的形式显示数组 data 每个单元中对象的字符串表示 实例 获取现有表格某行某列的数据 改变现有表格某行某列的数据

61 JTableWin(String s){ super(s); sumrows=new JButton("Good Sales"); sumcolumns=new JButton("Total Sales"); inputrowsnumber=new JTextField(4); sumrows.addactionlistener(this); sumcolumns.addactionlistener(this); inputrowsnumber.addactionlistener(this); psouth=new JPanel(); pnorth=new JPanel(); pnorth.add(new JLabel("Input row number,press Enter to confirm")); pnorth.add(inputrowsnumber); inputrowsnumber.setbackground(color.pink); psouth.add(sumrows); psouth.add(sumcolumns); getcontentpane().add(psouth,borderlayout.south); getcontentpane().add(pnorth,borderlayout.north); getcontentpane().add(new JScrollPane(table),BorderLayout.CENTER); setsize(370,250); setvisible(true); getcontentpane().validate(); setdefaultcloseoperation(jframe.exit_on_close); }

62

63

64

65 进度条组件 JProgressBar 类通过用颜色动态填充显示某任务完成的百分比 构造方法 JProgressBar() 创建一个水平进度条, 最小为 0,, 最大为 100 JProgressBar(int min, int max) JProgressBar(int orient, int min, int max) 一般方法 addchangelistener(changelistener e) 进度条注册监听器 getmaximum getminimum setmaximum(int n) setminimum(int n) getvalue 创建一个水平进度条, 最小为 min,, 最大为 max 创建一个进度条, 最小为 min,, 最大为 max,orient 为 HORIZONTAL 则为水平条,VERTICAL, 则为垂直条 获得进度条最大值获得进度条最小值 设置进度条最大值 设置进度条最小值 获得进度条当前值 setvalue(int n) 设置进度条当前值

66 setstring(string s) 设置进度条上文字信息 setborderpainted(boolean b) 设置进度条边框是否显示 setstringpainted(boolean b) 设置使用百分数还是字符串表示进度 注意 进度条的最大值并不是进度条的长度, 进度条的长度依赖于放置它的布局和本身是否试用了 setsize() 设置了大小 ; 实例 进度条的最大值 max 是指将进度条平均分成 max 份

67

68

69 树组件 简介 JTree 用来显示一个层次关系分明的一组数据, 用树状图表示能给用户一个直观而易用的感觉 JTree 可以通过树形结构分层组织数据来让用户清楚的了解各个节点之间的关系 要构造一个树组件必须事先创建出称为节点的对象 节点是树中最基本的对象, 表示在给定层次结构中的数据项 树中只有一个根节点, 除此以外的节点分为两类 : 叶节点 ( 即没有子节点的节点 ) 分支节点 ( 即有子节点的节点 ) 每个节点关联着一个描述该节点的文本标签和图像图标, 其中 : 文本标签是节点的字符串表示 图标指明该节点是否为叶节点

70 实现 javax.swing.tree 包中提供了一个 MutableTreeNode 接口来实现创建并成为树节点的对象 DefaultMutableTreeNode 类是实现了 MutableTreeNode 接口的类, 可以使用这个类为要创建的树准备节点, 其常用构造方法如下 : DefaultMutableTreeNode(Object userobj) DefaultMutableTreeNode(Object userobj, boolean child) 注册监听器 : 创建没有父节点和子节点 但允许有子节点的树节点, 并使用指定的用户对象对它进行初始化 创建没有父节点和子节点的树节点, 使用指定的用户对象对它进行初始化, 仅在指定时才允许有子节点 addtreeselectionlistener(treeselectionlistenere) 当鼠标单击树上的节点时, 系统将通知监听器自动调用 TreeSelectionListener 接口中的方法 valuechanged 实施相应操作

71 系统提供的树组件操作方法 JTree(TreeNode root) 返回一个 JTree,, 指定的 TreeNode 作为其根, 它显示根节点 getparent() 返回此节点的父节点, 如果此节点没有父节点, 则返回 null isleaf() 如果此节点没有子节点, 则返回 true getchildcount() setallowschildren(boolean b) getuserobject() 实例 返回此节点的子节点数 确定是否允许此节点拥有子节点 返回此节点的用户对象

72

73 setdefaultcloseoperation(jframe.exit_on_close); setvisible(true); setbounds(80,80,300,300); c.validate(); validate(); } public void valuechanged(treeselectionevent e){ DefaultMutableTreeNode node=(defaultmutabletreenode)tree.getlastselectedpathcomponent(); if(node.isleaf()) this.settitle((node.getuserobject()).tostring()); } } public class JTreeEx{ public static void main(string args[]){ JTreeWin win=new JTreeWin("JTree Example"); } }

74 中间容器 JPanel 面板 是一类无边框 不能移动 放大 缩小或关闭的容器 JPanel 不是顶层容器, 它是作为一个容器加入到其他顶层容器如 JFrame JApplet 中的 构造方法 : JPanel() 创建流布局的新 JPanel JPanel(LayoutManager layout) 实例 创建具有指定布局管理器的新 JPanel

75

76 JScrollPane 窗格 可以将一个组件放到一个滚动窗格中, 然后通过滚动条来观察这个组件 构造方法 : JScrollPane() 创建一个空的 JScrollPane,, 需要时水平和垂直滚动条都可显示 JScrollPane(int v, int h) 创建一个具有指定滚动条策略的空 JScrollPane JScrollPane(Component c) 创建一个显示指定组件内容的 JScrollPane,, 只要组件的内容超过视图大小就会显示水平和垂直滚动条 JScrollPane(Component c, int v, int h) JSplitPane 窗格 拆分窗格 : 可以用一条拆分线把容器分为左右或上下两个部分, 每个部分中都可以放置组件 构造方法 : 创建一个显示指定组件内容的 JScrollPane,, 具有指定滚动条策略

77 JSplitPane(int s, Component c1, Component c2) 一般方法 : 创建一个具有指定方向和指定组件的新 JSplitPane setdividerlocation(double position) JLayeredPane 分层窗格 可用来处理组件经常重叠的情况,JLayeredPane 可将容器分为五层 构造方法 一般方法 setlayer(component c, int layer) 设置分隔条的位置 JLayeredPane() 创建新的 JLayeredPane 设置指定组件的 layer 属性, 使之成为该层中最底部的组件 getlayer(component c) 返回指定 Component 的 layer 属性 add(jcomponent c. int layer) 添加组件并设置所在的层

78 注意 : 其中, 参数 layer 取值常量为 :»DEFAULT_LAYER( 最底层, 与其他层组件发生重叠时将被遮挡 )»PALETIE_LAYER»MODAL_LAYER»POPUP_LAYER»DRAG_LAYER( 最上层, 组件在移动中不会被遮挡, 若有许多组件, 鼠标移动一组件时可把移动组件放到 DRAG_LAYER 层 ) 若同一层上添加组件时发生重叠, 先添加的会遮挡后添加的 swing 提供两种分层面板 JLayeredPane JDesktopPane» 是 JLayeredPane 的子类, 用来容纳内部框架 (JInternalFrame) 而设置 JToolBar 工具栏 用于显示常用工具控件的容器 用户可以拖拽出一个独立的可显示工具控件的窗口, 设置相关属性 :

79 JToolBar.HORIZONTAL JToolBar.VERTICAL 构造方法 : JToolBar() 创建新的工具栏 ; 默认的方向为 HORIZONTAL 一般方法 : getcomponentindex(component c) 返回指定组件的索引 getcomponentatindex(int i) 返回指定索引位置的组件 实例

80 } b1=new JButton(new ImageIcon("1.jpg"));b1.addActionListener(this); b2=new JButton(new ImageIcon("2.jpg"));b2.addActionListener(this); b3=new JButton(new ImageIcon("3.jpg"));b3.addActionListener(this); jt=new JToolBar(); jt.add(b1);jt.add(b2);jt.add(b3); ta=new JTextArea(6,30); sp=new JScrollPane(ta); p=new JPanel(); setcontentpane(p); p.setlayout(new BorderLayout()); p.setpreferredsize(new Dimension(300,150)); p.add(jt,borderlayout.north); p.add(sp,borderlayout.center); show(); } public void actionperformed(actionevent e){ String s=""; if(e.getsource()==b1) s="you have pressed button at left!please Continue!\n"; if(e.getsource()==b2) s="you have pressed button at center!please Continue!\n"; if(e.getsource()==b3) s="you have pressed button at right!please Continue!\n"; ta.append(s); ta.setbackground(color.pink); } public static void main(string args[]){ new JToolBarEx(); }

81 多文档界面 Java 实现多文档界面 (MDI) 常用方式是在一个 JFrame 窗口中添加若干个被限制在 JFrame 中的内部窗体 JInternalFrame 在使用时需要将内部窗体事先添加到 JDesktopPane 桌面容器中 一个桌面容器可以添加若干个被限制在其内的内部窗体, 然后再将此桌面容器添加到 JFrame 窗体即可 构造方法 : JDesktopPane() 创建一个新的 JDesktopPane JInternalFrame() 创建不可调整大小的 不可关闭的 不可最大化的 不可图标化的 没有标题的 JInternalFrame JInternalFrame(String title, boolean resizable, 创建具有指定标题 可调整 可关闭 可最大化和 boolean closable, boolean max, boolean min) 可图标化的 JInternalFrame

82 一般方法 add(jinternalframe c, int layer) setlayer(jinternalframe c, int layer) getlayer(jinternalframe c) getallframes() getallframesinlayer(int layer) 添加内部窗体, 指定内部窗体所在的层次 设置内部窗体所在的层次 获取内部窗体所在的层次 返回桌面中当前显示的所有 JInternalFrames 返回桌面指定层中当前所显示的所有 JInternalFrames getselectedframe() 返回此 JDesktopPane 中当前活动的 JInternalFrame,, 如果当前没有活动的 JInternalFrame,, 则返回 null addinternalframelistener(internalframelistener listener) 添加指定的侦听器, 以从此内部窗体接收内部窗体事件 setmaximizable(boolean b) setclosable(boolean b) seticonifiable(boolean b) setresizable(boolean b) settitle(string title) setvisible() 设置 maximizable 属性, 该属性确定是否可以通过某个用户操作最大化此 JInternalFrame 设置是否可以通过某个用户操作关闭此 JInternalFrame 设置 iconable 属性, 对于能够使 JInternalFrame 变成一个图标的用户而言, 该属性必须为 true 设置是否可以通过某个用户操作调整 JInternalFrame 的大小 设置 JInternalFrame 的标题 设置内部窗体可见性

83 注意 : 内部窗体不同于中间容器, 不能直接把组件加入到 JInternalFrame 中, 而只能加到它的内容面板 ContentPane 中 内部窗体和 JFrame 窗体一样, 可以通过 getcontentpane() 方法得到它的内容窗体 为了能显示内部窗体, 必须把内部窗体先添加到一个专门为内部窗体服务的 JDesktopPane 容器中 内部窗体需设置初始大小, 内部窗体的内容面板的默认布局是 BorderLayout 布局 JOptionPane 和 JDialog 对话框 对话框的模式与方法 对话框分为模式 (Modal) 和非模式 (Non-modal) 两种 模式对话框 : 对话框程序必须确认才能继续运行 ; 非模式对话框 : 显示对话框后, 用户可以不用关闭此对话框就可继续程序的运行

84 构造方法 : JOptionPane() 创建一个带有测试消息的 JOptionPane JOptionPane(Object msg, int msgtype) JOptionPane(Object msg, int optiontype,, Icon icon) JDialog(Dialog owner, String str) JDialog(Dialog owner, boolean model) msgtype, int JDialog(Dialog owner, String str, boolean model) 创建一个显示消息的 JOptionPane 的实例, 使其具有指定的消息类型和默认选项 创建一个显示消息的 JOptionPane 的实例, 使其具有指定的消息类型 选项和图标 JDialog() 创建一个没有标题并且没有指定 Frame 所有者的无模式对话框 创建一个具有指定标题和指定所有者对话框的无模式对话框 创建一个具有指定所有者 Dialog 和模式的对话框 创建一个具有指定标题 模式和指定所有者 Dialog 的对话框

85 静态方法 showinputdialog(object msg) showinputdialog(component parentc,, Object msg,, String str, int msgtype) 显示请求用户输入的问题消息对话框 显示请求用户输入内容的对话框, 它以 parentc 为父级, 该对话框的标题为 str,, 消息类型为 msgtype showmessagedialog(component parentc,, Object msg) showmessagedialog(component parentc,, Object msg,, String str, int msgtype) ShowConfirmDialog(Component parentc,, Object msg) ShowConfirmDialog(Component parentc,, Object msg,, String str, int opttype) 调出信息为 msg 消息对话框调出对话框, 它显示使用由 msgtype 参数确定的默认图标的 message 调出带有选项 Yes No 和 Cancel 的对话框 ; 标题为 Select an Option 调出一个由 opttype 参数确定其中选项数的对话框

86 一般方法 : setsize() setmodal(boolean b) gettitle() settitle(string title) setvisible(boolean b) 设置对话框大小 设置对话框模式 获取对话框标题 设置对话框标题 设置对话框是否可见 JOptionPane 对话框 提供了多种可供用户使用的对话框以及相应的静态方法, 指定该方法中的有关参数就可以很容易的引用 JOptionPane 类赋予的对话框 JOptionPane 对话框主要分为以下四种类型 : ShowMessageDialog: 用于向用户显示一些信息, 含有 确定 按钮 方法中的 msgtype 可以取以下值 :»JOptionPane.WARNING_MESSAGE»JOptionPane.INFORMATION_MESSAGE»JOptionPane.QUESTION_MESSAGE

87 »JOptionPane.ERROR_MESSAGE»JOptionPane.PLAIN_MESSAGE 注意 : 以上这些值可以确定对话框的外观 ShowInputDialog: 用于提示用户进行数据输入, 通过返回一个确认 / 否消息给系统以决定取舍 ShowOptionDialog: 用于给出可供用户选择的对话框 ShowConfirmDialog: 用于想用户提问一个要求确认的信息, 并可得到 YES/NO/CANCEL 的响应, 方法中的 msgtype 可取以下值 :»JOptionPane.YES_NO_OPTION»JOptionPane.OK_CANCEL_OPTION»JOptionPane.YES_NO_CANCEL_OPTION 当对话框消失后,showConfirmDialog 方法会返回下列整数值之一 :»JOptionPane.YES_OPTION»JOptionPane.NO_OPTION»JOptionPane.OK_OPTION»JOptionPane.CANCEL_OPTION»JOptionPane.CLOSED_OPTION

88 实例

89 } else if(e.getsource()==b2){ title="question"; dialogtype=joptionpane.question_message; JOptionPane.showMessageDialog(null,content,title,dialogType); } else if(e.getsource()==b3){ title="input"; dialogtype=joptionpane.question_message; JOptionPane.showInputDialog(null,content,title,dialogType); } else{ title="confirm"; dialogtype=joptionpane.yes_no_option; JOptionPane.showConfirmDialog(null,content,title,dialogType); } } } public static void main(string args[]){ JOptionPaneEx jp=new JOptionPaneEx(); }

90

91 JDialog 对话框 如果 JOptionPane 提供的对话框无法满足我们的要求, 就需要使用 JDialog 来自行设计对话框 JDialog 类和 JFrame 类都是 Window 的子类, 两者都依赖于某个窗口或组件, 都可以将相关组件添加到内容面板 ContentPane 中 当 JDialog 对话框依赖的窗口或组件消失, 对话框也消失 ; 而当它所依赖的窗口或组件可见时, 对话框又会自动恢复 需要注意的是 : 不可以直接将组件添加到 JDialog 对象中, 而需要通过 getcontentpane 方法获得内容面板, 然后将组件添加到内容面板中去 ; 不可以对 JDialog 设置布局, 而是为其内容面板设置布局, 默认布局为 BorderLayout 实例 :

92 public class JDialogEx extends JFrame{ JLabel l1=new JLabel("please click yes or no button"); JLabel l2=new JLabel(" "); JButton b1=new JButton("display JDialog"); JButton b2=new JButton("yes"); JButton b3=new JButton("no"); private JDialog jd=new JDialog(); private JFrame jf; public JDialogEx(){ super("jdialog Example"); jf=new JFrame("JDialog"); Container c=getcontentpane(); c.setbackground(color.orange); c.setlayout(new GridLayout(2,1,20,20)); c.add(b1);c.add(l2); Container d1=jd.getcontentpane(); d1.setlayout(new FlowLayout()); d1.add(l1);d1.add(b2);d1.add(b3); b1.addactionlistener(new handle()); b2.addactionlistener(new handle()); b3.addactionlistener(new handle()); setsize(200,150); setvisible(true); }

93 } public class handle implements ActionListener{ public void actionperformed(actionevent e){ if(e.getsource()==b1){ jd.setbounds(150,150,200,150); jd.show(); } else if(e.getsource()==b2){ jd.hide(); l2.settext("you have selected yes button"); } else{ jd.hide(); l2.settext("you have selected no button"); } } } public static void main(string args[]){ JDialogEx jde = new JDialogEx(); }

94 多媒体程序设计 Java 屏幕坐标系 单位 : 像素 Graphics 主要方法 draw3drect(int x, int y, int w, int h, boolean raised) fill3drect(int x, int y, int w, int h, boolean raised) drawline(int x1, int y1, int x2, int y2) drawrect(int x, int y, int w, int h) 绘制以 (x,y) 为起点宽高为 w 和 h 的 3D 矩形, 当 raised 为 true 时 3D 效果为凸 填充以 (x,y) 为起点宽高为 w 和 h 的 3D 矩形, 当 raised 为 true 时 3D 效果为凸 画点 (x1,y1) 和点 (x2,y2) 之间的直线 绘制以 (x,y) 为起点宽高为 w 和 h 的矩形

95 fillrect(int x, int y, int w, int h) clearrect(int x, int y, int w, int h) drawroundrect(int x, int y, int w, int h, int arcw, int arch) fillroundrect(int x, int y, int w, int h, int arcw, int arch) drawoval(int x, int y, int w, int h) filloval(int x, int y, int w, int h) drawarc(int x, int y, int h, int sang, int arcang) fillarc(int x, int y, int h, int sang, int arcang) drawpolygon(int x[ ], int y[ ], int points) fillpolygon(int x[ ], int y[ ], int points) 填充以 (x,y) 为起点宽高为 w 和 h 的矩形 以背景色填充以 (x,y) 为起点宽高为 w 和 h 的矩形 绘制以 (x,y) 为起点宽高为 w 和 h 的圆角矩形, 四个圆角的宽度为 arcw,, 高度为 arch 填充以 (x,y) 为起点宽高为 w 和 h 的圆角矩形, 四个圆角的宽度为 arcw,, 高度为 arch 以 (x,y) 为起点 按宽高为 w 和 h 的外接矩形绘制椭圆 以 (x,y) 为起点 按宽高为 w 和 h 的外接矩形填充椭圆 以 sang 为起始角,arcAng, 为张角画圆弧或扇形, 逆时针为正 以 sang 为起始角,arcAng, 为张角填充圆弧或扇形, 顺时针为负 按照 x[] 和 y[] 数组为定点绘制封闭的 points 边形 按照 x[] 和 y[] 数组为定点填充封闭的 points 边形

96 图形处理 利用 Graphics 类提供的方法绘制图形 绘制直线 绘制矩形 绘制圆角矩形 绘制 3D 矩形 绘制椭圆 绘制圆弧和扇形 绘制多边形 颜色 Color(int r, int g, int b) Color(float r, float g, float b) Color(int rgb) 创建具有指定红绿蓝值的不透明 srgb 颜色, 值范围为 创建具有指定红绿蓝值的不透明 srgb 颜色, 值范围为 创建具有指定组合的 RGB 值的不透明的 srgb 颜色, 此 srgb 值的 位表示红色分量,8-15, 位表示绿色分量,0-7, 位表示蓝色分量

97 此外还有系统定义的 13 中颜色常量 :»WHITE / RED / GREEN / BLUE / GRAY / YELLOW / CYAN / BLACK / MAGENTA / PINK / DARKGRAY / LIGHTGRAY / ORANGE 文本字体设置 Font(String name, int style, int size) 根据指定名称 样式和磅值大小, 创建一个新 Font setfont(font font) getfont() getname() getstyle() getsize() 直接导入图形文件进行处理 声明 Image 类型的变量 通过 java.awt 下 Component 类的 createimage() 方法完成 Image createimage(imageproducer img) Image createimage(int w, int h) 设置字体 获取字体对象 获取字体的逻辑名字 获取字体字型 获取字体大小 使用指定的图像生成器创建一幅图像 返回具有 w 宽 h 高的空图像

98 java.awt.image 包中提供类 MemoryImageSource 适用于在内存中生成一幅图像 MemoryImageSource(int w, int h, int pix[ ], int start, int scan) 使用 getimage() 加载图像 在内存中生成一幅图像, 其中 pix[] 代表图像每一点颜色值,start, 代表起始位置,scan, 代表图像扫描线宽度 getimage(url url) getimage(url url,, String name) getimage(url url) getimage(string filename) 获取 url 中的图像获取指定 url 下文件 name 中的图像获取 url 中的图像获取指定 url 下文件 filename 中的图像 使用 drawimage() 绘制图像 drawimage(image ImageObserver obs) img, int x, int y, drawimage(image img, int x, int y, int w, int h, Color bg, ImageObserver obs) 绘制指定图像中当前可用的图像 绘制指定图像中当前可用的图像, 其中 bg 是在图像非透明部分下绘制的背景色

99 图像的缩放 声音处理 当 drawimage 语句和原来图片显示的宽 / 高度不一样时, 系统就自动进行缩放处理 图像旋转与透明处理 简单方式 play(url url) awt 包中提供了一个二维增强图像类 Graphics2D, 能够对图像及文本进行旋转 透明等处理 以 2D 方式进行处理, 需要将绘图区转换为 Graphics2d 类型, 然后调用其方法完成 ; 绘制透明图像时, 需要设定图形交叉区的颜色合成模式, 该模式由 AlphaComposite 类生成, 并由 Graphics2D 类设定 play(url url,, String name) 播放指定 url 的声音 播放指定 url 下声音文件 name 的声音 其中 url 表示声音文件的位置, 一般用 getcodebase() 或 getdocumentbase() 代表

100 可控制声音的播放 获取 AudioClip 对象 : getaudioclip(url url) getaudioclip(url url,, String name) AudioClip 提供的三个方法 : 从 url 获取 AudioClip 对象 play(): 从头开始播放声音, 只播放一次 ; loop(): 循环播放 stop(): 停止当前正在播放的声音 从 url 下声音文件 name 获取 AudioClip 对象

Swing-02.pdf

Swing-02.pdf 2 J B u t t o n J T e x t F i e l d J L i s t B u t t o n T e x t F i e l d L i s t J F r a m e 21 2 2 Swing C a n v a s C o m p o n e n t J B u t t o n AWT // ToolbarFrame1.java // java.awt.button //

More information

java2d-4.PDF

java2d-4.PDF 75 7 6 G r a d i e n t P a i n t B a s i c S t r o k e s e t P a i n t ( ) s e t S t o r k e ( ) import java.awt.*; import java.awt.geom.*; public class PaintingAndStroking extends ApplicationFrame { public

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes What is a JavaBean? JavaBean Java JavaBean Java JavaBean JComponent tooltiptext font background foreground doublebuffered border preferredsize minimumsize maximumsize JButton. Swing JButton JButton() JButton(String

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes (Swing) AWTEvent Font LayoutManager 1 Classes in the javax.swing package Heavyweight FontMetrics Object Color Panel Applet JApplet Graphics Component Container Window Frame JFrame * Dialog JDialog JComponent

More information

第1章

第1章 第 18 章 Swing 1 本章提要 18.1 前言 18.2 Swing 介紹 18.3 視窗元件 18.3.1 JFrame 18.3.2 Content Pane 18.3.3 Menu Bar 18.4 Swing 元件 18.4.1 JCheckBox JRadioButton JComboBox 18.4.2 JTextField JPasswordField 18.4.3 JTable

More information

<4D F736F F F696E74202D C DB5DA3132D5C25FCDBCD0CED3C3BBA7BDE7C3E6BBF9B4A12E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D C DB5DA3132D5C25FCDBCD0CED3C3BBA7BDE7C3E6BBF9B4A12E BBCE6C8DDC4A3CABD5D> 第 12 章图形用户界面基础 1 动因 为 Java GUI 程序设计而设计的 API 是如何应用面向对象 原则的绝佳范例 从本章开始将学习 Java GUI API 的框 架结构, 还要学习如何使用 GUI 组件为应用程序和 applet 开发用户友好接口 2 学习目标 区分 Swing 和 AWT 的不同 ( 第 12.2 节 ) 描述 Java GUI API 的层次体系结构 ( 第 12.3

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 按钮对象 (button) 当 JavaScript 读到 标记中的 type 属性值为 button 时, 自动建立一个按钮对象, 并将该对象放到表单对象的 elements 数组当中 按钮对象包括 : 普通按钮 (button) 提交按钮 (submit) 重置按钮 (reset) 1. 使用按钮对象的格式 document.forms[ 索引值 ].elements[ 索引值

More information

<4D F736F F F696E74202D20B5DA37D5C2204A617661B5C4CDBCD0CED3EBD3C3BBA7BDE7C3E62E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D20B5DA37D5C2204A617661B5C4CDBCD0CED3EBD3C3BBA7BDE7C3E62E BBCE6C8DDC4A3CABD5D> 第 7 章 Java 的图形与用户界面 7.1 概述 7.2 底层容器类 JFrame 和 JApplet 7.3 容器的布局 74 7.4 字体和颜色的使用 7.1 概述 利用 Java 中的图形 图像和重要的图形界面组件 (Componet) p 可以实现不同外观要求的窗口 图形和交互方式 1.java.awt awt 包 AWT 是抽象窗口工具集 Abstract Window Toolkit

More information

授课内容 内容 图形界面与控制台应用的区别 (Console Application) 第 6 章图形用户界面图形用户界面 (Graphical User Interface,GUI), 使用图形方式借助菜单 按钮等标准界面元素和键盘 鼠标操作, 实现人机交互 内容和要求 : 掌握 Java Swi

授课内容 内容 图形界面与控制台应用的区别 (Console Application) 第 6 章图形用户界面图形用户界面 (Graphical User Interface,GUI), 使用图形方式借助菜单 按钮等标准界面元素和键盘 鼠标操作, 实现人机交互 内容和要求 : 掌握 Java Swi 金陵科技学院教案 第 9 10 11 次课授课学时 6 教案完成时间 : 2014.2 章 节 第六章图形用户界面 6-1 AWT 组件及其属性类 6-2 事件处理 6-3 Swing 组件及事件 6-4 图形图像 ( 以自学为主 ) 1. AWT 组件及其属性类 主要内容 2. 事件处理 3. Swing 组件及事件 4. 图形图像 目的与要求 1. 掌握 Java Swing 组件的使用方法,

More information

Microsoft PowerPoint - ch02

Microsoft PowerPoint - ch02 第 一 篇 基 礎 圖 文 動 畫 (Basic Graphics / Animation) 2 1 簡 介 2 2 Frame Class 2 3 執 行 緒 繪 圖 流 程 2 4 Font Class 2 5 Color Class 2 6 中 文 處 理 2 7 習 題 (Exercises) 第 二 章 文 字 繪 製 (Words) 2 1 簡 介 本 書 探 討 的 是 動 畫 遊 戲,

More information

(CIP) Web /,. :,2005. 1 ISBN 7 81058 782 X.W............T P393.4 CIP (2004) 118797 Web ( 99 200436) ( http:/ / www.shangdapress.com 66135110) : * 787

(CIP) Web /,. :,2005. 1 ISBN 7 81058 782 X.W............T P393.4 CIP (2004) 118797 Web ( 99 200436) ( http:/ / www.shangdapress.com 66135110) : * 787 Web (CIP) Web /,. :,2005. 1 ISBN 7 81058 782 X.W............T P393.4 CIP (2004) 118797 Web ( 99 200436) ( http:/ / www.shangdapress.com 66135110) : * 787 1092 1/ 16 30.75 748 2005 1 1 2005 1 1 : 1 3 100

More information

利用Java技术编写桌面软件基础

利用Java技术编写桌面软件基础 利 用 Java 技 术 编 写 桌 面 软 件 基 础 在 学 习 Java 编 程 语 言 的 细 节 和 语 法 时, 我 们 会 碰 到 这 样 一 个 问 题 : 开 发 桌 面 应 用 软 件 需 要 使 用 哪 些 Java 技 术, 应 当 引 入 哪 些 package? 这 一 问 题 的 答 案 取 决 于 开 发 的 应 用 软 件 类 型 和 它 的 作 用 这 篇 文 章

More information

Microsoft Word - 投影片ch23

Microsoft Word - 投影片ch23 Java2 JDK5.0 教學手冊第三版洪維恩編著博碩文化出版書號 pg20210 第二十三章認識 Swing 本章學習目標 Swing 概述認識 JFrame 類別學習 Swing 的基本物件學習 Swing 物件之間的互動 認識 Swing 23-2 23.1 Swing 概述 Swing 提供了豐富的物件 更美觀的圖形介面, 以及更高的執行效率 幾乎每一個 AWT 物件都有一個相對應的 Swing

More information

Microsoft PowerPoint - ch03

Microsoft PowerPoint - ch03 第三章基礎繪圖 (Basic Graphics) 3 1 簡介 3 2 Graphics Class 3 3 3 直線繪製 3 4 長方形繪製 3 5 橢圓形繪製 3 6 弧線繪製 3 7 多邊形繪製 3 8 圖形剪裁 3 9 圖形複製 3 10 習題 (Exercises) 3 1 簡介 在基礎圖文繪製上, 除了前章所探討的文字繪製之外, 本章將介紹基礎圖形之繪製 類別 Graphics 提供了各類圖形之繪製方法程序,

More information

Mac Java import com.apple.mrj.*;... public class MyFirstApp extends JFrame implements ActionListener, MRJAboutHandler, MRJQuitHandler {... public MyFirstApp() {... MRJApplicationUtils.registerAboutHandler(this);

More information

大漠 伪前端, 就职于淘宝

大漠 伪前端, 就职于淘宝 CSS Grid Layout 2016-12-17 @ 大漠. #CSSConf https://www.flickr.com/photos/19139526@n00/8331063530/ 大漠 伪前端, 就职于淘宝 古老的 table 布局 现代 Web 布局 Float inline-block display: table position (absolute 或 relative)

More information

Microsoft Word - 第13章.doc

Microsoft Word - 第13章.doc 241 Java 从入门到精通 第 13 章 Swing 用户界面设计 AWT 存在缺少剪贴板 打印支持等缺陷, 甚至没有弹出式菜单和滚动窗口等, 因此 Swing 的产生也就成为必然 Swing 是纯 Java 实现的轻量级 (light-weight) 组件, 它不依赖系统的支持 本章主要讨论 Swing 组件基本的使用方法和使用 Swing 组件创建用户界面的初步方法 13.1 Swing 基础

More information

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题 2009 年 3 月 全 国 计 算 机 等 级 考 试 笔 试 试 卷 二 级 Java 语 言 程 序 设 计 ( 考 试 时 间 90 分 钟, 满 分 100 分 ) 一 选 择 题 ( 每 题 2 分, 共 70 分 ) 下 列 各 题 A) B) C) D) 四 个 选 项 中, 只 有 一 个 选 项 是 正 确 的 请 将 正 确 选 项 填 涂 在 答 题 卡 相 应 位 置 上,

More information

Microsoft Word - Broker.doc

Microsoft Word - Broker.doc Broker 模式 采用 broker 模式对分布式计算进行简单模拟 系统在一个进程内模拟分布式环境, 因此不涉及网络编程和进程间通信,Broker 通过本地函数调用的方式实现 request 和 response 的转发 采用 broker 模式对分布式计算进行简单的模拟, 要求如下 : 设计四个 server, 一个 server 接收两个整数, 求和并返回结果, 一个 server 接收两个整数,

More information

PowerPoint 簡報

PowerPoint 簡報 Paint 繪圖板 JAVA 程式設計 指導老師 : 鄞宗賢 組員 : 4A3G0901 劉彥佐 4A3G0907 韓偉志 畫面預覽 匯入參數 package paint; import java.awt.*; import java.awt.event.*; import javax.swing.*; 主程式 public class paint{ public static void main(string[]

More information

图形学 Project 2 要求 任意两个多边形, 求出其相交的区域 使用说明 例 1 第一步, 与 Project 1 画多边形的方法相同, 画一个多边形 ; 第二步, 单击 INTERSECT WITH, 随后画出第二个多边形 ; 第三步, 单击 FILL 进行填充

图形学 Project 2 要求 任意两个多边形, 求出其相交的区域 使用说明 例 1 第一步, 与 Project 1 画多边形的方法相同, 画一个多边形 ; 第二步, 单击 INTERSECT WITH, 随后画出第二个多边形 ; 第三步, 单击 FILL 进行填充 图形学 Project 2 要求 任意两个多边形, 求出其相交的区域 使用说明 例 1 第一步, 与 Project 1 画多边形的方法相同, 画一个多边形 ; 第二步, 单击 INTERSECT WITH, 随后画出第二个多边形 ; 第三步, 单击 FILL 进行填充 例 2 单击 CLEAR, 重新回到初始状态, 下面让我们看一下自交多边形的情况 当单击数次后, 出现左图的情况, 之后我们单击

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Java application Java main applet Web applet Runnable Thread CPU Thread 1 Thread 2 Thread 3 CUP Thread 1 Thread 2 Thread 3 ,,. (new) Thread (runnable) start( ) CPU (running) run ( ) blocked CPU sleep(

More information

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double

More information

幻灯片 1

幻灯片 1 图形界面程序设计 计算机信息系 课程引入说课提纲 案例 体验 双击运行 FiveMain.jar 文件, 和同桌一起体验下这个五子棋游戏, 并观察下这个游戏有哪些部分组成? 课程引入说课提纲 提出 问题 这个五子棋游戏和我们前几章完成的 学生综合素质评测系统 最大的区别是什么? 有什么优点或缺点吗? 1 图形用户界面是什么? 2 怎么用图形用户界面开发? 课程引入说课提纲 任务 任务名称 总任务 :

More information

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464>

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464> 第 1 章 进入 Photoshop 的全新世界 本章导读 Photoshop 1 1.1 Photoshop CS6 Photoshop Photoshop 1.1.1 Photoshop POP 1-1 图 1-1 平面广告效果 1.1.2 Photoshop 1-2 Photoshop CS6 Photoshop CS6 Photoshop CS6 Extended 3D 3 Photoshop

More information

chp11.ppt

chp11.ppt Java 软 件 设 计 基 础 Applet 程 序 1.Applet 概 念 Applet 与 Application Application 是 能 独 立 运 行 的 程 序 单 位 ; Applet 程 序 不 能 独 立 运 行, 必 须 依 附 在 网 页 上, 借 助 于 浏 览 器 才 能 运 行 通 常 置 于 服 务 器 端, 当 用 户 连 接 到 该 网 页,Applet

More information

ebook111-4

ebook111-4 Flash 4 Flash 4 F l a s h 5 Flash 4 Flash Flash 4 Flash 4 Flash 4 4.1 Flash 4 Flash 4 Flash 4 Flash Flash 4 Flash 4 4.2 Flash 4 Flash 4 A Flash 4 S h i f t F i l e P r e f e r e n c e s > > Flash 4 Flash

More information

基于CDIO一体化理念的课程教学大纲设计

基于CDIO一体化理念的课程教学大纲设计 Java 语 言 程 序 设 计 课 程 教 学 大 纲 Java 语 言 程 序 设 计 课 程 教 学 大 纲 一 课 程 基 本 信 息 1. 课 程 代 码 :52001CC022 2. 课 程 名 称 :Java 语 言 程 序 设 计 3. 课 程 英 文 名 称 :Java Programming 4. 课 程 类 别 : 理 论 课 ( 含 实 验 上 机 或 实 践 ) 5. 授

More information

LEFT, RIGHT // 左 // 右 (2) 当图片移动后, 按钮的坐标发生改变, 此操作通过 setloca tion() 方法实现 setlocation() 方法是从 Component 类继承的, 其定义如下 : public void setlocation(int x, int y

LEFT, RIGHT // 左 // 右 (2) 当图片移动后, 按钮的坐标发生改变, 此操作通过 setloca tion() 方法实现 setlocation() 方法是从 Component 类继承的, 其定义如下 : public void setlocation(int x, int y 拼图游戏 任务说明 本实例实现了拼图游戏的开发 运行程序, 单击 开始 按钮将打乱图片的位置, 效果如图 1 所示, 然后通过鼠标单击图片进行移动, 直到将所有图片都移动到正确位置, 游戏过关, 过关后的效果如图 2 所示 图 1 打乱图片位置的效果图 2 图片移动到正确位置的效果 关键技术 本程序主要通过 Swing 与枚举类实现, 程序将一幅完整的图片平均分成 9 部分, 每一部分为一个正方形,

More information

p.2 1 <HTML> 2 3 <HEAD> 4 <TITLE> </TITLE> 5 </HEAD> 6 7 <BODY> 8 <H3><B> </B></H3> 9 <H4><I> </I></H4> 10 </BODY> </HTML> 1. HTML 1. 2.

p.2 1 <HTML> 2 3 <HEAD> 4 <TITLE> </TITLE> 5 </HEAD> 6 7 <BODY> 8 <H3><B> </B></H3> 9 <H4><I> </I></H4> 10 </BODY> </HTML> 1. HTML 1. 2. 2005-06 p.1 HTML HyperText Mark-up Language 1. HTML Logo, Pascal, C++, Java HTML 2. HTML (tag) 3. HTML 4. HTML 1. HTML 2. 3. FTP HTML HTML html 1. html html html cutehtmleasyhtml 2. wyswyg (What you see

More information

无类继承.key

无类继承.key 无类继承 JavaScript 面向对象的根基 周爱 民 / aimingoo aiming@gmail.com https://aimingoo.github.io https://github.com/aimingoo rand = new Person("Rand McKinnon",... https://docs.oracle.com/cd/e19957-01/816-6408-10/object.htm#1193255

More information

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d

More information

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class

More information

Microsoft Word - 正文.doc

Microsoft Word - 正文.doc 第 7 章 Java 中的 GUI 编程 图形用户界面 (Graphical User Interface,GUI) 使用图形的方式, 借助菜单 按钮等标准界面元素和鼠标操作, 帮助用户方便地向计算机系统发送指令, 启动操作, 并将系统运行的结果同样以图形方式显示给用户 图形用户界面操作简单, 省去了字符界面用户必须记忆各种命令的麻烦, 深受广大用户的喜爱和欢迎 所以学习设计和开发图形用户界面, 是应用软件开发人员的必修课

More information

ZW1.PDF

ZW1.PDF C. A. R. Hoare, The Emperor s Old Clothes Java C++ Objective C Eiffel Smalltalk Mesa Lisp Java Java Java C++ Java 10 Item 1 Item 2 String.equals() == 1 1 Item 3 Java C++ Java Item 4 Java Item 5 Java Item

More information

1.3 最终效果图 : 2 内部布局代码 2.1 按键按钮代码 // 初始化计算器上键的按钮, 将键放在一个画板内 JPanel keypanel = new JPanel(); // 用网格布局器,4 行,5 列的网格, 网格之间的水平方向间隔为 3 个象素, 垂直方向间隔为 3 个象素 keyp

1.3 最终效果图 : 2 内部布局代码 2.1 按键按钮代码 // 初始化计算器上键的按钮, 将键放在一个画板内 JPanel keypanel = new JPanel(); // 用网格布局器,4 行,5 列的网格, 网格之间的水平方向间隔为 3 个象素, 垂直方向间隔为 3 个象素 keyp 计算器 1. 计算器上的键的显示名字 1.0 继承 JFrame 类 public class Calculate extends JFrame { 1.1 定义常量 计算器上的键的显示名字 public final String[] KEYS = { "7", "8", "9", "/", "sqrt", "4", "5", "6", "*", "%", "1", "2", "3", "-", "1/x",

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt Java 程式設計基礎班 (8) 莊坤達台大電信所網路資料庫研究室 Email: doug@arbor.ee.ntu.edu.tw Class 8 1 回顧 Java Data Structure Class 8 2 Java AWT package Component: 一些 GUI 元件, 如 : Button Label 等 Container: 用來放置 GUI 元件的地方 Container

More information

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 odps-sdk 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基 开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Fortran Algol Pascal Modula-2 BCPL C Simula SmallTalk C++ Ada Java C# C Fortran 5.1 message A B 5.2 1 class Vehicle subclass Car object mycar public class Vehicle extends Object{ public int WheelNum

More information

Microsoft Word - 正文.doc

Microsoft Word - 正文.doc 单元七 Java GUI 应用程序开发 1.AWT 及其图形界面组件 2.AWT 布局管理器 3.AWT 事件处理机制 案例 7-1 登录窗口 登录窗口是很多应用系统中不可缺少的组成部分 通过验证用户输入的用户名和密码, 决定是否允许用户进入系统, 在一定程度上保证系统的安全 本案例设计一个登录窗口, 运行 界面如图 7-1 所示 图 7-1 案例 7-1 登录窗口 众所周知, 拥有图形用户界面的计算机应用程序生动

More information

(京)新登字063号

(京)新登字063号 教 育 部 职 业 教 育 与 成 人 教 育 司 推 荐 教 材 Java 程 序 设 计 教 程 ( 第 二 版 ) 沈 大 林 主 编 沈 昕 肖 柠 朴 曾 昊 等 编 著 内 容 简 介 Java 是 由 美 国 SUN 公 司 开 发 的 一 种 功 能 强 大 的, 具 有 简 单 面 向 对 象 分 布 式 可 移 植 等 性 能 的 多 线 程 动 态 计 算 机 编 程 语 言

More information

Topic

Topic 二 级 JAVA 上 机 试 题 汇 编 第 01 套 : 1. 基 本 操 作 (1 小 题, 计 30 分 ) 在 考 生 文 件 夹 中 存 有 文 件 名 为 Java_1.java 的 文 件, 该 程 序 是 不 完 整 的, 请 在 注 释 行 //**********Found********** 下 一 行 语 句 的 下 划 线 地 方 填 入 正 确 内 容, 然 后 删 除

More information

Java事件处理模型

Java事件处理模型 Java 事件处理模型 北京理工大学计算机学院 金旭亮 事件驱动 的软件系统 面向对象的软件系统许多是 事件驱动 的, 通常定义了一系列的事件, 并且事先规定好这些事件发生时应该如何响应 由于事件的发生通常是离散的, 所以 事件驱动 的软件系统并没有一个固定的执行流程 Java 的 GUI 应用程序也是 事件驱动 的 2014/11/17 金旭亮 Java 编程系列 (2014 版 ) 2 Java

More information

mvc

mvc Build an application Tutor : Michael Pan Application Source codes - - Frameworks Xib files - - Resources - ( ) info.plist - UIKit Framework UIApplication Event status bar, icon... delegation [UIApplication

More information

coverage2.ppt

coverage2.ppt Satellite Tool Kit STK/Coverage STK 82 0715 010-68745117 1 Coverage Definition Figure of Merit 2 STK Basic Grid Assets Interval Description 3 Grid Global Latitude Bounds Longitude Lines Custom Regions

More information

Microsoft Word - 正文.doc

Microsoft Word - 正文.doc 第一部分基本实验 31 contentpane.add(p); setjmenubar(mb); // 将菜单项注册给事件监听者 File_Open.addActionListener(this); File_Close.addActionListener(this); File_Exit.addActionListener(this); Edit_Copy.addActionListener(this);

More information

javaexample-02.pdf

javaexample-02.pdf n e w. s t a t i c s t a t i c 3 1 3 2 p u b l i c p r i v a t e p r o t e c t e d j a v a. l a n g. O b j e c t O b j e c t Rect R e c t x 1 y 1 x 2 y 2 R e c t t o S t r i n g ( ) j a v a. l a n g. O

More information

软件工程文档编制

软件工程文档编制 实训抽象类 一 实训目标 掌握抽象类的定义 使用 掌握运行时多态 二 知识点 抽象类的语法格式如下 : public abstract class ClassName abstract void 方法名称 ( 参数 ); // 非抽象方法的实现代码 在使用抽象类时需要注意如下几点 : 1 抽象类不能被实例化, 实例化的工作应该交由它的子类来完成 2 抽象方法必须由子类来进行重写 3 只要包含一个抽象方法的抽象类,

More information

[Short Essay:] 1. (5 points) Use state-of-memory diagram to describe the differences between x and y declared as follows: double[] x = new double[4];

[Short Essay:] 1. (5 points) Use state-of-memory diagram to describe the differences between x and y declared as follows: double[] x = new double[4]; Introduction to Programming (II) Spring 2008, Final Exam Name: ID Number: [True/False:] (5 points each) If your answer is "false", you have to provide correct reasons. Otherwise, no points will be given.

More information

图形学 Project 1 要求 多边形区域填充 ( 算法不限 ) 使用说明 例 1 第一步, 鼠标随意在界面中的画布上点击两次, 则两点间连一条直线 ; 第二步, 画第三个顶点时, 自动连结成为三角形 ; 第三步, 按顺序依次点击, 则按点击顺序形成多边形, 每次多边形变化时, 第一个点和最后

图形学 Project 1 要求 多边形区域填充 ( 算法不限 ) 使用说明 例 1 第一步, 鼠标随意在界面中的画布上点击两次, 则两点间连一条直线 ; 第二步, 画第三个顶点时, 自动连结成为三角形 ; 第三步, 按顺序依次点击, 则按点击顺序形成多边形, 每次多边形变化时, 第一个点和最后 图形学 Project 1 要求 多边形区域填充 ( 算法不限 ) 使用说明 例 1 第一步, 鼠标随意在界面中的画布上点击两次, 则两点间连一条直线 ; 第二步, 画第三个顶点时, 自动连结成为三角形 ; 第三步, 按顺序依次点击, 则按点击顺序形成多边形, 每次多边形变化时, 第一个点和最后 一个点自动连接起来 ; 第四步, 当感觉满意时, 单击 FILL, 则多边形内部就被填充了 例 2 单击

More information

untitled

untitled 1 行 行 行 行.NET 行 行 類 來 行 行 Thread 類 行 System.Threading 來 類 Thread 類 (1) public Thread(ThreadStart start ); Name 行 IsAlive 行 行狀 Start 行 行 Suspend 行 Resume 行 行 Thread 類 (2) Sleep 行 CurrentThread 行 ThreadStart

More information

基于ECO的UML模型驱动的数据库应用开发1.doc

基于ECO的UML模型驱动的数据库应用开发1.doc ECO UML () Object RDBMS Mapping.Net Framework Java C# RAD DataSetOleDbConnection DataGrod RAD Client/Server RAD RAD DataReader["Spell"].ToString() AObj.XXX bug sql UML OR Mapping RAD Lazy load round trip

More information

Microsoft Word - Java全文.doc

Microsoft Word - Java全文.doc 第 4 章事件模型与事件处理 本章导读 本章首先介绍事件处理的由来, 并描述基于窗口的事件驱动程序的流程, 接着详细阐述 AWT 事件处理模型, 主要涉及三类对象 : 事件源 监听器和事件处理方法, 并说明事件处理机制, 具体介绍事件类 事件监听器 AWT 事件及其相应的监听器接口 事件适配器和常用的四种对事件的响应, 最后介绍开发一个基于 Java 平台事件驱动模型的记事本的案例 本章要点 事件处理的流程和机制

More information

可 Web 编程的NativeUI 设计与实现

可 Web 编程的NativeUI  设计与实现 可 Web 编程的 NativeUI 设计与实现 张袁炜 zhangyuanwei@baidu.com 欢迎转岗简历请发 About Me @ 张袁炜 直达号 网址导航 百度 音乐 前端 Node.js Android Arduino RaspberryPI https://github.com/zhangyuanwei Outline 一个 Hybrid App 的进化史 Native UI 实现原理

More information

chp8.ppt

chp8.ppt Java 软件设计基础 图形用户界面程序设计入门 1. 组件概述 GUI: Graphics User Interface 设计和实现 GUI 的主要难点 创建组成界面的各成分和元素, 指定它们的属性和位置关系, 根据具体需要布局排列, 从而构成完整的 GUI 的外观表象 ; 在 GUI 程序中, 代码所执行的路线及顺序都是很不确定的 在 GUI 程序中, 用户可以点击任意按键并和屏幕上的其他任何部分进行交互及信息传递

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 310-055Big5 Title : Sun Certified Programmer for the Java 2 Platform.SE 5.0 Version : Demo 1 / 22 1. 11. public static void parse(string str)

More information

Microsoft Word - 投影片ch20

Microsoft Word - 投影片ch20 Java2 JDK5.0 教學手冊第三版洪維恩編著博碩文化出版書號 pg20210 第二十章 AWT 的繪圖 本章學習目標認識 Java 繪圖的基本概念學習設定圖形的顏色與文字的字型學習用滑鼠繪圖的基本程式設計 AWT 的繪圖 20-2 20.1 繪圖概述 20.1.1 座標系統 Java 的座標系統, 原點在視窗的左上角, 向右為 x 軸方向, 向下為 y 軸方向, 如下圖所示 : 原點 x (x,y)

More information

Guava学习之Resources

Guava学习之Resources Resources 提供提供操作 classpath 路径下所有资源的方法 除非另有说明, 否则类中所有方法的参数都不能为 null 虽然有些方法的参数是 URL 类型的, 但是这些方法实现通常不是以 HTTP 完成的 ; 同时这些资源也非 classpath 路径下的 下面两个函数都是根据资源的名称得到其绝对路径, 从函数里面可以看出,Resources 类中的 getresource 函数都是基于

More information

Microsoft Word - 新1-12.doc

Microsoft Word - 新1-12.doc 实训 5 面向对象编程练习 实训 5 面向对象编程练习 5.1 实训目的 通过编程和上机实验理解 Java 语言是如何体现面向对象编程基本思想 以及如何创建类 和对象 了解成员变量和成员方法的特性 5.2 实训要求 编写一个体现面向对象思想的程序 编写一个创建对象和使用对象的方法的程序 5.3 实训内容 5.3.1 创建对象并使用对象 1 定义一个 Person 类 可以在应用程序中使用该类 成员属性

More information

Business Objects 5.1 Windows BusinessObjects 1

Business Objects 5.1 Windows BusinessObjects 1 Business Objects 5.1 Windows BusinessObjects 1 BusinessObjects 2 BusinessObjects BusinessObjects BusinessObjects Windows95/98/NT BusinessObjects Windows BusinessObjects BusinessObjects BusinessObjects

More information

图形用户界面 (GUI) 设计

图形用户界面 (GUI) 设计 2013-2014 学年度第二学期课程 C 语言程序设计 Java 语言程序设计面向过程编程方法 编程方法学 新疆农业大学计算机与信息工程学院 陈燕红 :cyh@xjau.edu.cn 图形用户界面 (GUI) 设计 参考 C:\Program Files\Java\jdk1.6.0_10\demo 教学内容 1 Java 图形用户界面设计概述 2 3 4 AWT 组件集 事件处理 Swing

More information

Microsoft PowerPoint - course8.ppt

Microsoft PowerPoint - course8.ppt 回顧 Java 程式設計基礎班 (8) Java Data Structure 劉根豪台大電機所網路資料庫研究室 Email: kenliu@arbor.ee.ntu.edu.tw 1 2 Java AWT package Java Swing package Component: 一些 GUI 元件, 如 :Button Label 等 Container: 用來放置 GUI 元件的地方 Container

More information

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit Tomcat Web JUnit Cactus JUnit Java Cactus JUnit 26.1 JUnit Java JUnit JUnit Java JSP Servlet JUnit Java Erich Gamma Kent Beck xunit JUnit boolean JUnit Java JUnit Java JUnit Java 26.1.1 JUnit JUnit How

More information

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074> 程 序 设 计 实 习 INFO130048 3-2.C++ 面 向 对 象 程 序 设 计 重 载 继 承 多 态 和 聚 合 复 旦 大 学 计 算 机 科 学 与 工 程 系 彭 鑫 pengxin@fudan.edu.cn 内 容 摘 要 方 法 重 载 类 的 继 承 对 象 引 用 和 拷 贝 构 造 函 数 虚 函 数 和 多 态 性 类 的 聚 集 复 旦 大 学 计 算 机 科 学

More information

res/layout 目录下的 main.xml 源码 : <?xml version="1.0" encoding="utf 8"?> <TabHost android:layout_height="fill_parent" xml

res/layout 目录下的 main.xml 源码 : <?xml version=1.0 encoding=utf 8?> <TabHost android:layout_height=fill_parent xml 拓展训练 1- 界面布局 1. 界面布局的重要性做应用程序, 界面是最基本的 Andorid 的界面, 需要写在 res/layout 的 xml 里面, 一般情况下一个 xml 对应一个界面 Android 界面布局有点像写 html( 连注释代码的方式都一样 ), 要先给 Android 定框架, 然后再在框架里面放控件,Android 提供了几种框架,AbsoluteLayout,LinearLayout,

More information

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d =

More information

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 -> 目录 1 大概思路... 1 2 创建 WebAPI... 1 3 创建 CrossMainController 并编写... 1 4 Nuget 安装 microsoft.aspnet.webapi.cors... 4 5 跨域设置路由... 4 6 编写 Jquery EasyUI 界面... 5 7 运行效果... 7 8 总结... 7 1 1 大概思路 创建 WebAPI 创建 CrossMainController

More information

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 第 1 页共 32 页 crm Mobile V1.0 for IOS 用户手册 一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 二 crm Mobile 界面介绍 : 第 3 页共 32 页 三 新建 (New) 功能使用说明 1 选择产品 第 4 页共 32 页 2 填写问题的简要描述和详细描述 第 5 页共

More information

付宝容器 jsapi 档 册 PDF 版本 本版本为实验版本, 为线下独 查看使, 受制于 成 PDF 程序的限制, 样式问题还没有很好的解决, 例如分 切图 代码 亮 推荐使 在线版本, 便实时查看 jsapi 运 效果 如需搜索, 使 阅读 PDF 软件 带功能即可 更多细节样式调整和 录索引探

付宝容器 jsapi 档 册 PDF 版本 本版本为实验版本, 为线下独 查看使, 受制于 成 PDF 程序的限制, 样式问题还没有很好的解决, 例如分 切图 代码 亮 推荐使 在线版本, 便实时查看 jsapi 运 效果 如需搜索, 使 阅读 PDF 软件 带功能即可 更多细节样式调整和 录索引探 付宝容器 jsapi 档 册 PDF 版本 本版本为实验版本, 为线下独 查看使, 受制于 成 PDF 程序的限制, 样式问题还没有很好的解决, 例如分 切图 代码 亮 推荐使 在线版本, 便实时查看 jsapi 运 效果 如需搜索, 使 阅读 PDF 软件 带功能即可 更多细节样式调整和 录索引探索建设中 成时间 : 2017-07-20 12:13:21 Since 8.6 定义键盘 定义键盘使

More information

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0, http://debut.cis.nctu.edu.tw/~chi Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0, : POSITIVE_INFINITY NEGATIVE_INFINITY

More information

Text 文字输入功能 , 使用者可自行定义文字 高度, 旋转角度 , 行距 , 字间距离 和 倾斜角度。

Text 文字输入功能 , 使用者可自行定义文字  高度, 旋转角度 , 行距 , 字间距离 和 倾斜角度。 GerbTool Wise Software Solution, Inc. File New OPEN CLOSE Merge SAVE SAVE AS Page Setup Print Print PreView Print setup (,, IMPORT Gerber Wizard Gerber,Aperture Gerber Gerber, RS-274-D, RS-274-X, Fire9000

More information

epub 94-3

epub 94-3 3 A u t o C A D L AY E R L I N E T Y P E O S N A P S T Y L E X R E F - AutoLISP Object ARX A u t o C A D D C L A u t o C A D A u t o d e s k P D B D C L P D B D C L D C L 3.1 Wi n d o w s A u t o C A D

More information

chp6.ppt

chp6.ppt Java 软 件 设 计 基 础 6. 异 常 处 理 编 程 时 会 遇 到 如 下 三 种 错 误 : 语 法 错 误 (syntax error) 没 有 遵 循 语 言 的 规 则, 出 现 语 法 格 式 上 的 错 误, 可 被 编 译 器 发 现 并 易 于 纠 正 ; 逻 辑 错 误 (logic error) 即 我 们 常 说 的 bug, 意 指 编 写 的 代 码 在 执 行

More information

手册 doc

手册 doc 1. 2. 3. 3.1 3.2 3.3 SD 3.4 3.5 SD 3.6 3.7 4. 4.1 4.2 4.3 SD 4.4 5. 5.1 5.2 5.3 SD 6. 1. 1~3 ( ) 320x240~704x288 66 (2G SD 320x2401FPS ) 32M~2G SD SD SD SD 24V DC 3W( ) -10~70 10~90% 154x44x144mm 2. DVR106

More information

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj Message Transition 5-1 5-2 DataInputStream Class 5-3 DataOutputStream Class 5-4 PrintStream Class 5-5 (Message Transition) (Exercises) Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream

More information

Microsoft Word - 01.DOC

Microsoft Word - 01.DOC 第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的

More information

WinMDI 28

WinMDI 28 WinMDI WinMDI 2 Region Gate Marker Quadrant Excel FACScan IBM-PC MO WinMDI WinMDI IBM-PC Dr. Joseph Trotter the Scripps Research Institute WinMDI HP PC WinMDI WinMDI PC MS WORD, PowerPoint, Excel, LOTUS

More information

全国计算机技术与软件专业技术资格(水平)考试

全国计算机技术与软件专业技术资格(水平)考试 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 2008 年 上 半 年 程 序 员 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 ) 试 题 一 ( 共 15 分 ) 阅 读 以 下 说 明 和 流 程 图, 填 补 流 程 图 中 的 空 缺 (1)~(9), 将 解 答 填 入 答 题 纸 的 对 应 栏 内 [ 说 明

More information

untitled

untitled 1 LinkButton LinkButton 連 Button Text Visible Click HyperLink HyperLink 來 立 連 Text ImageUrl ( ) NavigateUrl 連 Target 連 _blank _parent frameset _search _self 連 _top 例 sample2-a1 易 連 private void Page_Load(object

More information

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 Java V1.0.1 2007 4 10 1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 6.2.10 6.3..10 6.4 11 7.12 7.1

More information

JavaIO.PDF

JavaIO.PDF O u t p u t S t ream j a v a. i o. O u t p u t S t r e a m w r i t e () f l u s h () c l o s e () public abstract void write(int b) throws IOException public void write(byte[] data) throws IOException

More information

EJB-Programming-4-cn.doc

EJB-Programming-4-cn.doc EJB (4) : (Entity Bean Value Object ) JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Session Bean J2EE Session Façade Design Pattern Session Bean Session

More information

5-1 nav css 5-2

5-1 nav css 5-2 5 HTML CSS HTML CSS Ê Ê Ê Ê 5-1 nav css 5-2 5-1 5 5-1-1 5-01 css images 01 index.html 02 5-3 style.css css 03 CH5/5-01/images 04 images index.html style.css 05

More information

3.1 num = 3 ch = 'C' 2

3.1 num = 3 ch = 'C' 2 Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:

More information

Photoshop CS6 艺术设计案例教程 ( 第二版 ) 1.1 Photoshop 的应用领域 Photoshop,,, Photoshop Photoshop 的用途 Photoshop CIS ( ) ( ) 案例展现 ~ 1

Photoshop CS6 艺术设计案例教程 ( 第二版 ) 1.1 Photoshop 的应用领域 Photoshop,,, Photoshop Photoshop 的用途 Photoshop CIS ( ) ( ) 案例展现 ~ 1 Chapter 01 Photoshop CS6 的基本操作 本章内容 1.1 Photoshop 的应用领域 1.6 控制面板的显示与隐藏 1.2 位图和矢量图的特性 1.7 新建 打开与保存文件 1.3 像素和分辨率的关系 1.8 图像的缩放 1.4 色彩模式 1.9 屏幕显示模式 1.5 Photoshop CS6 界面 1.10 计算机图形图像常用的色彩模式 Photoshop CS6 艺术设计案例教程

More information

Adobe® Flash® 的 Adobe® ActionScript® 3.0 程式設計

Adobe® Flash® 的 Adobe® ActionScript® 3.0 程式設計 337 18 Adobe Flash CS4 Professional MovieClip ActionScript Flash ActionScript Flash Flash Flash MovieClip MovieClip ActionScript ( ) MovieClip Flash Sprite ActionScript MovieClip ActionScript 3.0 Shape

More information

Microsoft Word - 3D手册2.doc

Microsoft Word - 3D手册2.doc 第 一 章 BLOCK 前 处 理 本 章 纲 要 : 1. BLOCK 前 处 理 1.1. 创 建 新 作 业 1.2. 设 定 模 拟 控 制 参 数 1.3. 输 入 对 象 数 据 1.4. 视 图 操 作 1.5. 选 择 点 1.6. 其 他 显 示 窗 口 图 标 钮 1.7. 保 存 作 业 1.8. 退 出 DEFORMTM3D 1 1. BLOCK 前 处 理 1.1. 创 建

More information

MATLAB介紹

MATLAB介紹 MATLAB 2008a GUIDE GUIDE GUIDE Graphic User Interface Design Environment Graphical User Interface GUI GUIDE 令 拉 見 GUIDE 不 GUI GUI 行 率 GUIDE MATLAB 7.x GUIDE 令 guide GUIDE GUIDE Create New GUI Blank GUI

More information

Learning Java

Learning Java Java Introduction to Java Programming (Third Edition) Prentice-Hall,Inc. Y.Daniel Liang 2001 Java 2002.2 Java2 2001.10 Java2 Philip Heller & Simon Roberts 1999.4 Java2 2001.3 Java2 21 2002.4 Java UML 2002.10

More information

C 1

C 1 C homepage: xpzhangme 2018 5 30 C 1 C min(x, y) double C // min c # include # include double min ( double x, double y); int main ( int argc, char * argv []) { double x, y; if( argc!=

More information

untitled

untitled 3 C++ 3.1 3.2 3.3 3.4 new delete 3.5 this 3.6 3.7 3.1 3.1 class struct union struct union C class C++ C++ 3.1 3.1 #include struct STRING { typedef char *CHARPTR; // CHARPTR s; // int strlen(

More information

第四章 102 图 4唱16 基于图像渲染的理论基础 三张拍摄图像以及它们投影到球面上生成的球面图像 拼图的圆心是相同的 而拼图是由球面图像上的弧线图像组成的 因此我 们称之为同心球拼图 如图 4唱18 所示 这些拼图中半径最大的是圆 Ck 最小的是圆 C0 设圆 Ck 的半径为 r 虚拟相机水平视域为 θ 有 r R sin θ 2 4畅11 由此可见 构造同心球拼图的过程实际上就是对投影图像中的弧线图像

More information

Microsoft Word - Java程序设计全文_终_.doc

Microsoft Word - Java程序设计全文_终_.doc 实训 20 综合开发 2: 文本编辑器 20.1 实训目的 通过采用 Netbeans 重新开发并完善实训 15 中的文本编辑器程序, 训练读者掌握使用 Netbeans 进行 AWT GUI 程序的综合开发技能 20.2 实训案例 下面介绍如何采用 Netbeans 重新开发并完善实训 15 中的文本编辑器程序 通过本实训, 读者能够掌握 : (1)GUI 的菜单设计 (2)GUI 国际化处理 (3)GUI

More information

D C 93 2

D C 93 2 D9223468 3C 93 2 Java Java -- Java UML Java API UML MVC Eclipse API JavadocUML Omendo PSPPersonal Software Programming [6] 56 8 2587 56% Java 1 epaper(2005 ) Java C C (function) C (reusability) eat(chess1,

More information

Microsoft Word - Data IO CS Calculate Method AppNote.doc

Microsoft Word - Data IO CS Calculate Method AppNote.doc Data I/O Checksum Calculation Methods Application Note (Chinese translation follows this English text.) General Description and Scope This document describes common checksum calculation methods for devices

More information

基于UML建模的管理管理信息系统项目案例导航——VB篇

基于UML建模的管理管理信息系统项目案例导航——VB篇 PowerBuilder 8.0 PowerBuilder 8.0 12 PowerBuilder 8.0 PowerScript PowerBuilder CIP PowerBuilder 8.0 /. 2004 21 ISBN 7-03-014600-X.P.. -,PowerBuilder 8.0 - -.TP311.56 CIP 2004 117494 / / 16 100717 http://www.sciencep.com

More information

A-1 HTML A-1-1 HTML 1 HTML JSP HTML HTML HTML JSP A HTML HTML HTML HTML HTML HTML HTML HTML.htm.html HTML Windows NotePad HTML IE [ / ] NotePad A-2

A-1 HTML A-1-1 HTML 1 HTML JSP HTML HTML HTML JSP A HTML HTML HTML HTML HTML HTML HTML HTML.htm.html HTML Windows NotePad HTML IE [ / ] NotePad A-2 HTML A-1 HTML A-2 A-2 HTML A-8 A-3 A-14 A-4 A-26 A-5 A-30 A-6 A-42 A-1 HTML A-1-1 HTML 1 HTML JSP HTML HTML HTML JSP A HTML HTML HTML HTML HTML HTML HTML HTML.htm.html HTML Windows NotePad HTML IE [ /

More information

RUN_PC連載_8_.doc

RUN_PC連載_8_.doc PowerBuilder 8 (8) Web DataWindow ( ) DataWindow Web DataWindow Web DataWindow Web DataWindow PowerDynamo Web DataWindow / Web DataWindow Web DataWindow Wizard Web DataWindow Web DataWindow DataWindow

More information

第1章

第1章 第 16 章 千變萬化的視窗程式 1 本章提要 16.1 前言 16.2 AWT package 介紹 16.3 視窗 (Frame) 16.4 版面管理員 (Layout Manager) 16.5 各種好用的圖形介面元件 16.5.1 勾選元件 Checkbox 16.5.2 文字框 TextField 16.5.3 列示 List 16.5.4 標籤 Label 16.5.5 選單 Menu

More information

( 二 ) 具 体 目 标 课 程 教 学 目 标 具 体 体 现 为 专 业 技 能 专 业 素 质 和 专 业 知 识 三 方 面 的 目 标 (1) 专 业 技 能 目 标 1 能 运 用 面 向 对 象 程 序 设 计 的 思 想 分 析 和 设 计 类 ; 会 定 义 接 口, 并 能 有

( 二 ) 具 体 目 标 课 程 教 学 目 标 具 体 体 现 为 专 业 技 能 专 业 素 质 和 专 业 知 识 三 方 面 的 目 标 (1) 专 业 技 能 目 标 1 能 运 用 面 向 对 象 程 序 设 计 的 思 想 分 析 和 设 计 类 ; 会 定 义 接 口, 并 能 有 JAVA 程 序 设 计 课 程 标 准 课 程 代 码 0830110 课 程 性 质 适 用 专 业 软 件 技 术 中 软 软 件 职 业 专 项 能 力 必 修 课 建 议 学 时 10 建 议 教 学 实 施 方 式 教 学 做 一 体 化 教 学 制 定 单 位 学 校 常 州 信 息 职 业 技 术 学 院 制 定 日 期 013.3.0 执 笔 JAVA 课 程 组 企 业 常 州

More information