java基于Swing的图形界面
Java图形用户界面:Swing和JavaFX的简单介绍
Java图形用户界面:Swing和JavaFX的简单介绍在计算机科学领域中,图形用户界面(GUI)是指通过图形、图像和视觉元素来与计算机程序进行交互的界面。
Java作为一种广泛使用的编程语言,提供了多种选择来构建图形用户界面。
其中,Swing和JavaFX是最常用的两种选择。
本文将对这两种Java GUI工具进行简单介绍,并探讨它们的特点和用途。
一、SwingSwing是Java提供的一套GUI工具包,旨在提供一种跨平台的解决方案。
它是在AWT(抽象窗口工具包)的基础上开发的,为开发者提供了一系列可重用的GUI组件,如按钮、文本框、标签等。
Swing的特点之一是其轻量级性能,它不依赖于操作系统的原生GUI组件,而是完全由Java代码实现。
这使得Swing应用程序可以在不同操作系统上以相同的方式运行,而无需进行任何修改。
Swing提供了丰富的组件库,使得开发者可以轻松构建复杂的用户界面。
它还支持可定制的外观和感觉,开发者可以根据自己的需求选择不同的外观主题。
此外,Swing还提供了一些高级组件,如表格、树形结构和滚动面板,使得开发者可以创建更复杂和功能强大的界面。
然而,Swing也有一些缺点。
由于其完全由Java代码实现的特性,Swing应用程序可能在性能方面存在一些问题。
尤其是在处理大量数据或复杂图形时,Swing的性能可能会受到影响。
此外,Swing的外观和感觉可能与操作系统的原生界面存在一些差异,这可能会对用户体验造成一定的影响。
二、JavaFXJavaFX是Java平台上的另一种GUI工具,它提供了更现代化和富有表现力的用户界面。
与Swing不同,JavaFX使用了一种基于场景图的方式来构建界面。
它通过使用FXML(一种基于XML的用户界面描述语言)和CSS(层叠样式表)来分离界面的结构和样式,使得界面的定制变得更加灵活和简单。
JavaFX提供了许多内置的UI组件,如按钮、文本框、标签等,这些组件具有更丰富的视觉效果和交互特性。
Java实验
实验一熟悉Java开发环境(验证性2学时)一、实验目的与要求:1 掌握Java Application程序的开发过程并编写第一个Java Application程序*2 掌握Java Applet程序的开发过程并编写第一个Java Applet程序。
*3 练习简单的HTML文件配合Java Applet使用。
4 熟悉jdk的使用二、实验内容:1 编写一个Java Application程序,在屏幕上显示”This is my first java program!”.*2 编写第一个Java Applet 程序,在屏幕上显示”This is my first Java Applet!”三、实验步骤:1、jdk的使用jdk开发工具包可以从网站下载,jdk不是集成编译环境,须手动运用命令行程序进行编译和解释执行1)编辑.java文件可以在记事本或其他纯文本编辑器中编辑,保存时把文件扩展名定为.java即可,当然要注意文件名命名的要求2)编译生成.class文件进入dos系统进行编译(如图1.1所示),格式如javac MyFirstApplication.java,要注意图1.1进入命令行看javac.exe的路径并且MyFirstApplication.java文件路径和javac.exe路径一样。
编译成功后就能在浏览器中看见多了一个MyFirsApplication.class或更多的.class文件。
如图1.2所示图1.2使用jdk编译MyFirstApplication.java文件3)解释执行Application程序:同样是在dos系统下解释执行,格式如java MyFirstApplication,注意.class后缀别加,如图1.3所示。
图1.3解释执行MyFirstApplication.class程序* applet程序进入dos系统进行编译,格式如javac MyFirstApplet.java,要注意看javac.exe的路径并且MyFirstApplet.java文件路径和javac.exe路径一样。
Java的形化界面开发选择合适的框架与工具
Java的形化界面开发选择合适的框架与工具Java的图形界面开发选择合适的框架与工具Java是一种跨平台的编程语言,广泛应用于软件开发领域。
在图形界面开发方面,Java提供了多个框架与工具,开发者可以根据自身需求选择合适的组件和工具来进行开发。
本文将介绍几个常用的Java图形界面开发框架与工具,并分析它们的优势和适用范围。
一、Swing框架Swing是Java平台提供的主要图形界面开发框架之一。
它基于Java的AWT(Abstract Window Toolkit)框架,提供了丰富的GUI组件和强大的事件处理机制。
Swing具有良好的跨平台性能和灵活的可定制性,适用于开发各种类型的桌面应用程序。
Swing框架提供了一系列面向对象的GUI组件,如按钮、标签、文本框、表格等,开发者可以通过组合这些组件来构建复杂的用户界面。
此外,Swing还支持图形渲染、国际化和可访问性等功能,使得应用程序更加美观、易用和易于维护。
二、JavaFX框架JavaFX是Java平台的另一个重要图形界面开发框架。
它是在Java SE 8及其之后版本中引入的,作为Swing的继任者。
JavaFX框架提供了现代化的UI组件和丰富的动画效果,支持CSS样式表和FXML布局文件,极大地简化了界面设计和开发流程。
JavaFX具有良好的性能和优秀的渲染效果,在图形处理、媒体播放和界面布局等方面有着卓越的表现。
它的线程模型也更加灵活,能够实现响应式的用户界面设计。
三、AWT框架AWT是Java最早引入的图形界面开发框架。
它是使用本地窗口系统提供的原生组件,因此在外观和行为上与操作系统保持一致。
AWT 提供了一系列基本的GUI组件,如按钮、标签、文本框等,可以通过AWT的布局管理器来进行界面排版。
尽管AWT能够提供与操作系统一致的外观,但它的定制性和可扩展性相对较差。
另外,AWT的组件在跨平台上的兼容性也有一定的问题。
因此,在现代的Java应用程序开发中,AWT的使用相对较少,主要用于一些特定场景或需要与底层系统交互的应用。
Java17第十四章2-界面设计swing
JPopupMenu:弹出式菜单组件
安卓越科技(北京)有限公司
18
import java.awt.Color; import javax.swing.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; public class PopupMenuTest { static JPopupMenu popup=null; public static void main(String[] args) { JFrame frame = new JFrame(); frame.setBounds(200,300,200, 300); frame.setTitle("我的第一个小板凳"); //设置不允许调整窗口的大小 frame.setResizable(false); frame.setBackground(Color.ORANGE); popup = new JPopupMenu(); popup.add("徐明华"); popup.add("张燕君"); popup.add("徐诗佳"); popup.add("王子昊"); popup.setName("右击菜单"); frame.add(popup);//在窗体上加右击菜单 frame.addMouseListener(new MouseAdapter() { public void mouseReleased(MouseEvent e) { if(e.getButton() == MouseEvent.BUTTON3){ popup.show(e.getComponent(), e.getX(), e.getY()); } } });//添加事件监听器 frame.setVisible(true);//显示窗体}}
Java语言程序设计:第十章 Java图形用户界面
t}ryesflrs{eaetmD{teer.fypaau{cltkC(l)o; seOperation(EXIT_ON_CLOSE);
选中“ToGoelnUyke}DsiItrMt.caiegmtjefaebreamxtaeIcHtncnmDnLheeaistoea}ep((gidf)oE.ctae;veinkxoaurarAc单.ntcllsstcieo.dTnc击ephmpoardrtetmotLi(i“FneoeEleokte(nnFnS)xoieiSttl”ec(te;kla)}iC”exzA.cgceplkneaetT=dtipsoS“rFtsanicoSNecrnaeeeav)(exlem(){nc;ASeellp”(iz)t)ei保;o()n存;)源{ 文U件I和M工an程a文g件er.getS
边
有间距
CENTER
的 East
组 容se器tHgap(int hgap)
件
setVgap(int vgap)
组
将组件间的水平间距设置为指定的值
件
将组件间的垂直间距设置为指定的值
下边的组件
South
天津职业技术师范大学
BorderLayout
…… class testFrame extends JFrame {
天津职业技术师范大学
BorderLayout
North
左
边 West 的
组 容器
件
上边的组件 CENTER
下边的组件
South
右 边 的 East 组 件
天津职业技术师范大学
BorderLayout
North
方法
左 BorderLay边out( )
West 的
java图形化界面练习及答案
j a v a图形化界面练习及答案As a person, we must have independent thoughts and personality.作业标题:第四次练习题(总分:得分:分)一、单选题(共有题目15题,共计分)1.下列属于容器的组件有A.JButtonB.JPaneC.CanvasD.JTextArea学生的答案: B标准答案: B该题分数:学生得分: 分2.下列方法中,不属于WindowListener接口的是A.windowOpened()B.windowClosed()C.windowActivated()D.windowAdapter学生的答案: D标准答案: D该题分数:学生得分: 分3.下列不属于Swing中组件的是( )。
A.JPanelB.JTableC.MenuD.JFrame学生的答案: C标准答案: C该题分数:学生得分: 分4.以下Swing组件中哪一个不是顶层容器组件( )。
A.框架B.对话框C.面板D.小程序学生的答案: C标准答案: A该题分数:学生得分: 0分5.对于Swing基本控件单选框,若要使两个单选框对象之间具有相互排斥的关系,需要( )。
A.创建两个单选框对象时定义相同的对象名B.将两个单选框对象放在同一个面板上C.定义一个ButtonGroup对象group,将两个单选框对象加到group中D.让两个单选框排成一行或一列学生的答案: C标准答案: C该题分数:学生得分: 分6.容器被重新设置大小后,( )布局管理器的容器中的组件大小不随容器大小的变化而改变。
A.CardLayoutB.FlowLayoutC.BorderLayoutD.GridLayout学生的答案: B标准答案: B该题分数:学生得分: 分7.下列哪个类创建的对象可以触发ActionEvent事件( )。
A.类B.包的子类C.类D.类学生的答案: A标准答案: A该题分数:学生得分: 分8.下列叙述中哪个是正确的( )A.不是任何组件都可以触发MouseEvent事件B.处理WindowEvent事件的接口是FocusListenerC.类实现了MouseListener接口D.是一个接口学生的答案: C标准答案: C该题分数:学生得分: 分9.在基于Swing的图形用户界面设计中,面板属于( )。
实验7 图形用户界面之swing组件的使用_实验报告
学生姓名
***
学号
***
成绩
系(院)别
计算机科学与技术学院
专业
计算机科学与技术
班级
***
课程名称
Java程序设计
任课教师
李冰
实验日期
***
实验序号
7
实验名称
图形用户界面之swing组件的使用
实验室
软三实验室
实验台号
***
指导教师
李冰
一、实验目的
1、掌握JFrame类的使用方法。
2、掌握swing包内组件类的使用方法。
二、实验内容(详见实验内容文档)
1、编写一个Java应用程序,输入学生的姓名,选择性别、籍贯及文化程度,单击“确定”按钮显示学生信息,单击“取消”按钮可以重新输入或选择学生信息。(使用swing组件实现)
2、正确或错误。
3、为按钮添加动作监听器接口ActionListener。
4、实现ActionListener接口中的方法。
实验步骤:
……
五、实验结果(包括设计效果、测试数据、运行结果等)
此处书写实验的测试数据及运行结果,或程序的运行效果等。
六、实验小结(包括收获、心得体会、注意事项、存在的问题及解决问题的方法、建议等)
此处书写本次实验你的收获,本次实验你有什么心得体会,实验中存在的问题及解决方法,实验中的注意事项等。
七、附录(包括作品、流程图、源程序及命令清单等)
此处书写本次实验的源程序或流程图等。
1、实验环境
Java SE Development Kit
四、实验设计方案(包括实验步骤、设计方案、算法描述或流程图等)
设计方案:
Java的GUI开发介绍SwingJavaFX和AWT
Java的GUI开发介绍SwingJavaFX和AWTJava的GUI开发介绍Swing、JavaFX和AWTJava作为一门跨平台的编程语言,提供了多种图形用户界面(Graphical User Interface,简称GUI)的开发框架,其中最常用的有Swing、JavaFX和AWT。
本文将介绍这三种界面开发框架的特点和用法。
一、SwingSwing是Java提供的一套组件库,用于创建跨平台的图形用户界面。
它提供了丰富的组件,包括按钮、文本框、下拉菜单等,可以满足各种界面开发的需求。
Swing的特点如下:1. 跨平台性:Swing基于Java语言,可以轻松地在不同的平台上运行,例如Windows、Mac和Linux等。
2. 可定制性:Swing的组件可以通过设置属性、添加事件监听器等方式进行灵活的定制,以满足个性化的界面需求。
3. 容易学习和使用:Swing采用了面向对象的设计思路,提供了一套简单易懂的API,使得开发者可以快速上手,进行GUI的开发。
二、JavaFXJavaFX是Oracle公司在Java SE 8中引入的新一代界面开发工具。
它是一种富客户端平台,提供了丰富的可视化界面组件和多媒体支持。
JavaFX的特点如下:1. 设计美观:JavaFX支持CSS样式,可以轻松实现漂亮的界面设计,让用户体验更加友好。
2. 多媒体支持:JavaFX内置了对音频、视频等多媒体资源的支持,使得开发者可以在界面中嵌入丰富的多媒体内容。
3. 高性能:JavaFX采用了硬件加速技术,可以提供流畅的界面体验,并具有较低的内存占用。
三、AWTAWT(Abstract Window Toolkit)是Java最早提供的GUI开发工具包,它是基于底层操作系统窗口的一种界面开发方式。
AWT的特点如下:1. 简单易用:AWT提供了一些基本的界面组件,如窗口、按钮和文本框等,使用起来非常简单。
2. 平台依赖性:AWT的界面在不同的操作系统上可能有差异,因为它是直接使用底层窗口系统的API。
Java程序设计:第八章 Swing图形界面程序设计
原型 public FlowLayout(int align )
描述
FlowLayerout布局时,组件在容器以从左到右,从 上到下的方式排列。 align用于指定行对齐方式, FlowLayout.LEFT表示左 对齐,相应的有右对齐和居中对齐。
java.awt.Container的成员JLabel(2)
JFrame的成员方法
原型
public JFrame( ) public JFrame(String title) public void setDefaultCloseOperation( int operation) public void setSize(int width, int height) public void setVisible(boolean b) public Container getContentPane()
描述 构造一个无标题不可见的框架 构造一个标题为title的框架 设置当关闭框架时的操作,例如operation为 JFrame.EXIT_ON_CLOSE时表示退出程序
设置框架的大小
设置框架是否可见 返回当前框架的内容窗格
7
组件和容器 -JFrame和JLabel(3)
FlowLayout布局的成员方法:
4
组件和容器(3)
一般容器包括: 面板JPanel,滚动窗格JScrollPane,选项卡 窗格JTabbedPane和工具栏JToolBar。
专用容器包括:内部框架(JInternalFrame),分层窗格 (JLayedPane)、根窗格(JRootPane)、玻璃窗格(GlassPane )、内 容窗格(ContentPane)。
描述 构造一个父窗口为owner,标题为title,模式为 modal的对话框。Modal为true表示有模式,为false 表示无模式 设置对话框的大小
JavaSwing图形用户界面的设计与实现方法
JavaSwing图形用户界面的设计与实现方法一、引言随着计算机技术的不断发展,图形用户界面(Graphical User Interface,GUI)在软件开发中扮演着越来越重要的角色。
作为用户与软件之间的沟通桥梁,GUI的设计与实现至关重要。
本文将介绍JavaSwing图形用户界面的设计与实现方法,帮助开发人员更好地利用JavaSwing创建出功能强大、用户友好的GUI界面。
二、Swing概述JavaSwing是Java提供的一套GUI组件库,它基于Java AWT (Abstract Window Toolkit)构建而成,相对于AWT,Swing提供了更加丰富的组件和更高的灵活性。
Swing拥有独立于平台的外观,通过Java代码实现GUI界面的构建和事件处理。
使用Swing可以快速实现各种界面风格,并且易于调整和扩展。
三、Swing组件的使用1. 容器类组件:容器类组件是其他组件的父容器,对应于应用程序的窗口或面板,常用的容器类组件有JFrame、JPanel、JDialog等。
通过创建容器类组件,可以将其他组件添加到容器中并管理和布局。
2. 基本组件:基本组件是构建GUI界面的基本元素,常用的基本组件有JButton、JLabel、JTextField等。
它们可以用于实现用户输入、数据展示、按钮点击等交互操作。
3. 高级组件:高级组件是Swing提供的一些特殊功能的组件,如JTable、JTree、JFileChooser等。
它们可以用于展示表格、树状结构、文件选择等复杂的用户交互功能。
四、事件处理为了响应用户的操作,GUI界面需要进行事件处理。
在JavaSwing中,事件处理分为两个阶段:事件生成和事件响应。
当用户与界面进行交互时,会生成相应的事件,如按钮点击、鼠标移动等。
开发人员需要实现事件的监听器,并在事件发生时触发相应的操作。
五、界面布局界面布局是指组件在容器中的排列方式。
在Swing中,界面布局主要通过布局管理器(Layout Manager)实现。
第9章Java Swing图形用户界面-Java面向对象程序设计教程-微课视频-程杰-清华大学出版社
9.1 Java Swing概述 9.2 JFrame窗口 9.3布局管理器 9.4 常用控件 9.5事件处理机制 9.6 JDialog对话框 9.7 应用实例:打地鼠小游戏
通过GUI(Graphic User Interface,图形用户界 面),用户与程序之间可以方便地进行交互。Java 的java.awt包,即Java抽象窗口工具包(Abstract Window Toolkit,AWT)提供了许多用来设计GUI 的组件类。Java早起进行用户界面设计时,主要使 用java.awt包提供的类,如Button(按钮)、 TextField(文本框)和List(列表)等。JDK1.2 推出后,增加了一个新的javax.swing包,该包提 供了功能更为强大的用来设计GUI的类。
Javax.swing包提供了Box类,该类也是Container
类的一个子类,创建的容器称为一个盒式容器,盒 式容器的默认布局是盒式布局,而且不允许更改盒 式容器的布局。因此,在策划程序的布局时,可以 利用容器的嵌套,将摸个容器嵌入几个盒式ng中提供了一个更加强大的布 局——弹簧布局SpringLayout。利用该布局管理器
管理组件,当改变窗体的大小时,能够在不改变组 件间相对位置的前提下自动调整组件的大小。
9.4.1 标签JLable 9.4.2 文本框JTextField 9.4.3 按钮JButton 9.4.4 菜单JMenu 9.4.5文本区JTextArea 9.4.6下拉列表JList 9.4.7表格JTable 9.4.8 树JTree
Public void keyTyped(KeyEvent),键盘按键被输入 事件。
无论用户界面设计的如何美观别致,最重要的一点 是知道这些组件能做什么,如单击一个“打开文件” 按钮,我们希望打开的是文件对话框,而不希望程 序没有任何响应。Java提供了事件模型,使Swing
第5章 基于Swing的图形化用户界面_1布局管理器与事件处理 - 全
通过 java.awt 包
创建 GUI
容器 组件 布局管理器
包含 AWT 容器组件
以图形表示的对象允许用户交互
AWT 包 含 内 容
定义 GUI 组件的位置
使用 AWT 图形方法相对于窗口绘制图形
图形和绘制方法
字体 事件
创建并构造用于选择新字体的对象 用于用户和系统交互
AWT类结构
框架JFrame
JFrame是放置其他Swing组件的顶级容器。
JFrame用于在Swing程序中创建顶层窗口。 默认情况下,框架的尺寸是没有实际意义的0X0像素。 为了设定合适的框架大小,要调用框架的setSize方法。
默认情况下,框架在创建时是不可见的。为了显示框架 ,要调用框架的setVisible方法。
AWTEvent Font Component ng.object Graphics MenuComponent 布局管理器类 Window Frame Container
Panel
Applet
Swing概述
通过 Swing (轻量级组件,纯Java组件) Javax.swing 包 创建 GUI
默认情况下,当用户关闭一个框架时,该框架会隐藏起
来,程序不会终止,调用setDefaultCloseOperation。
JFrame应用示例
创建具有以下特征的窗口: • 自定义窗口的标题; • 窗口的大小不可变(300,200); • 窗口居中显示。
标题
最大化按钮 失效
JFrame应用示例
import javax.swing.*; class App5_1 { public static void main(String[] args) { JFrame f=new JFrame("第一个Java窗口"); //创建容器 f.setSize(300,200); //设置容器大小 f.setLocationRelativeTo(null) ; //框架居中 f.setVisible(true); //设置框架可见性 f.setResizable(false); //设置不能改变框架大小 f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } }
软件专业研究生实验报告
实验名称:基于Java的图形用户界面设计一、实验目的1. 熟悉Java图形用户界面设计的基本概念和常用组件。
2. 掌握Swing库的使用,能够设计简单的图形用户界面。
3. 培养编程实践能力,提高问题解决能力。
二、实验环境1. 操作系统:Windows 102. 开发工具:Eclipse IDE for Java Developers3. 编程语言:Java4. 开发库:Swing库三、实验内容1. 创建一个简单的图形用户界面,包括窗口、按钮、标签、文本框等组件。
2. 实现按钮点击事件,输出信息到控制台。
3. 设计一个带有滚动条的面板,展示大量数据。
4. 使用布局管理器(如FlowLayout、BorderLayout、GridLayout等)对界面进行布局。
四、实验步骤1. 创建一个名为“GUIProject”的Java项目,在Eclipse中导入Swing库。
2. 创建一个名为“MainFrame”的类,继承自JFrame类,作为主窗口。
3. 在“MainFrame”类中,添加以下代码:```javaimport javax.swing.;import java.awt.;public class MainFrame extends JFrame {public MainFrame() {// 设置窗口标题setTitle("图形用户界面设计");// 设置窗口大小setSize(500, 400);// 设置关闭操作setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置布局管理器setLayout(new BorderLayout());// 创建按钮JButton button = new JButton("点击我");// 添加按钮到窗口add(button, BorderLayout.CENTER);// 添加事件监听器button.addActionListener(e -> {System.out.println("按钮被点击了!");});}public static void main(String[] args) {// 创建窗口实例MainFrame frame = new MainFrame();// 显示窗口frame.setVisible(true);}}```4. 修改“MainFrame”类,添加滚动条和标签:```javaimport javax.swing.;import java.awt.;public class MainFrame extends JFrame {public MainFrame() {// ...(省略其他代码)// 创建面板JPanel panel = new JPanel();// 设置布局管理器panel.setLayout(new GridLayout(0, 1));// 创建标签JLabel label = new JLabel("这是一个标签");// 添加标签到面板panel.add(label);// 创建滚动条JScrollPane scrollPane = new JScrollPane(panel); // 添加滚动条到窗口add(scrollPane, BorderLayout.CENTER);}// ...(省略其他代码)}```5. 运行程序,观察效果。
Java形界面SwingJavaFX和AWT
Java形界面SwingJavaFX和AWT Java形界面Swing、JavaFX和AWTJava是一种广泛应用的编程语言,其强大的图形界面(GUI)库使得开发者能够创建各种各样的用户界面。
在Java中,有三种主要的GUI库,它们分别是Swing、JavaFX和AWT。
本文将详细介绍这三种GUI库的特性和使用方法。
一、SwingSwing是Java提供的一套用于构建图形界面的库,它基于AWT库进行了扩展。
Swing提供了丰富的组件和布局管理器,使得开发者能够轻松地创建漂亮和交互性强的界面。
1.1 组件Swing提供了大量的组件,包括按钮、文本框、标签、列表框、表格等。
开发者可以通过组合这些组件来构建复杂的界面。
Swing组件的特点是可定制性高,开发者可以自定义组件的外观和行为。
1.2 布局管理器Swing通过布局管理器来自动调整组件的位置和大小。
常用的布局管理器有FlowLayout、BorderLayout、GridLayout和GridBagLayout。
开发者可以根据界面的需要选择合适的布局管理器。
1.3 事件处理Swing使用事件模型来处理用户的输入和其他操作。
开发者可以为组件添加事件监听器,响应用户的操作。
事件处理是Swing应用中的重要部分,可以使界面与用户产生交互。
二、JavaFXJavaFX是Oracle推出的新一代Java GUI库。
与Swing相比,JavaFX提供了更多的现代化特性,包括动画效果、3D支持和富文本等。
2.1 UI控件JavaFX提供了一套丰富的UI控件,包括按钮、标签、文本框、下拉框等。
这些控件样式多样,并且支持CSS样式表进行自定义。
2.2 布局JavaFX使用场景图(Scene Graph)来组织界面元素。
开发者可以使用各种布局容器来构建界面,如VBox、HBox、BorderPane等。
2.3 动画效果JavaFX内置了强大的动画框架,开发者可以轻松地创建平滑的过渡效果、缩放动画和旋转动画等。
讲JAVA图形用户界面(1)(修改)
第十二讲JA V A图形用户界面(1)最初的JA V A图形界面是AWT,为了平台公用性,AWT功能很简单,而且不同平台下的AWT存在不同的漏洞,因此被戏称为“一次编写,到处调试”。
随后,SUN与Netscape合作创建了Swing用户界面库。
Swing并不是完全替代AWT,而是基于AWT。
12.1框架(Frame、JFrame)AWT中Frame/ Swing中JFrame(1)使用import java.awt.*;访问图形类(2)使用Frame(String title)构造方法产生框架(3)使用setSize(int w,int h)设置框架大小(4)使用show()方法使之可见,也可以使用setVisible( true)(5)创建完成后,可以使用setTitle(String title )重设窗口的标题例12.1import java.awt.*;class Program{public static void main(String[] args){Frame frm=new Frame("我是窗口");frm.setSize(500,300);frm.setVisible( true);}}或者:import java.awt.*;class MyFrame extends Frame{public MyFrame(){}public MyFrame(String title){super(title);this.setSize(500,300);this.addWindowListener(this);frm.setVisible( true);}}class Program{public static void main(String[] args){MyFrame frm=new MyFrame("我是窗口");}}运行程序,将出现一个窗口,但什么内容也没有,也无法关闭,因为当前这个窗口还不能处理各种事件。
第6章 Swing编程
JFrame编程示例2
例8_2_2 FrameDemo2.java源代码——采用继承方式创建窗口应用程序示例 import javax.swing.*; import java.awt.event.*; class FrameDemo2 extends JFrame{ FrameDemo2(){ setTitle("JFrameDemo"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setResizable(false); setSize(200,150); show(); } public static void main(String[] args) { FrameDemo2 frame=new FrameDemo2(); } }
组件常用方法
public void setLocation(int x,int y)——设置组件在容器中 的位置 public Dimension getSize() ——返回一个Dimension 对象的引用,该对象实体中含有名字是width和height 的成员变量。 public Point getLocation(intx,inty) ——返回一个 Point对象的引用,该对象实体中含有名字是x和y的成 员变量。 public void setBounds(int x,int y,int width,int height)——设置组件在容器中的位置和组件的大小。 该方法相当于setSize()方法和setLocation()方法的组 合。
组件常用方法
public void setBackground(Colorc)——设置组件的背景色。 public void setForeground(Colorc)——设置组件的前景色。 public Color getBackground(Colorc)——获取组件的背景色。 public Color getForeground(Colorc)——获取组件的前景色。 Color类是iava.awt包中的类,该类创建的对象称为颜色 对象。用Color类的构造方法public Color(int red,int green,int blue)可以创建一个颜色对象,其中red、green、blue的取 值在0—255之间。另外,Color类中还有red、blue、green、 orange、cyan、yellow、pink等静态常量,都是颜色对象。
Java图形化界面编程介绍
Java图形化界⾯编程介绍⽬录1.内容概述2.容器Container2.1Window2.2Panel2.3ScrollPane2.4Box3.布局管理器3.1FlowLayout3.2BorderLayout3.3GridLayout3.4Cardlayout4.AWT基本组件5.事件处理6.开发⼀个简单计算器1.内容概述 先谈谈个⼈对图形化界⾯编程的认识,图形化界⾯编程可以直接的看到每⼀步操作带来的效果,相对于传统编程盯着⿊框框学起来是⾮常⾮常有意思的。
再谈谈最后的效果,界⾯是由窗⼝和组件构成的。
⽽组件在窗⼝内的排列并不是没有章法可⾔,依赖于布局管理器使组件以合适的位置以及合理的排布呈现。
排布于窗⼝内的组件⼜可以通过事件监听器与⽤户进⾏交互…2.容器Container 什么是容器?容器是特殊的组件。
容器是⽤来装东西的,不仅可以存放组件,也可以⽤来存放容器,⽽存放的容器⼜可以存放容器或组件。
听起来有点反复套娃,但学起来还是很容易的!2.1Window Window是可以独⽴存在的顶级窗⼝,其默认使⽤BorderLayout布局管理器。
frame.setLocation(500,300)⽅法⽤来设置窗⼝的位置,通常计算机的远点坐标在左上⾓。
frame.setSize(500,300)⽅法⽤来设置窗⼝的尺⼨。
frame.setVisible(true)设置窗⼝是否可见。
运⾏效果(使⽤Frame来创建⼀个窗⼝): 注意此时的窗⼝不能通过单击右上⾓的’X’关闭窗⼝,只能⼿动结束程序,因为还没有加⼊事件监听机制。
代码:import java.awt.*;public class WindowDemo {public static void main(String[] args) {//创建⼀个窗⼝对象Frame frame = new Frame("测试Window窗⼝");//指定窗⼝的位置和⼤⼩frame.setLocation(500,300);frame.setSize(500,300);//设置窗⼝可见frame.setVisible(true);}}2.2Panel Panel是内嵌式容器,必须内嵌于其它容器中使⽤,不能独⽴存在。