java_卡片布局_选项卡窗格

合集下载

Swing

Swing

Swing(曹雯君)Swing是一个为Java设计的图形用户界面(GUI)工具包。

Swing是Java API的一部分。

Swing包括了GUI的元器件,如:文本框,按钮,分隔窗格和表。

Swing用于提供一组“轻量级”(全部是 Java 语言)组件,它们用纯Java写成,所以同样可以跨平台使用。

轻量级元件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。

1. 30分钟快速上手1.1 Swing和AWT的关系与区别•关系Swing是一个用于开发JAVA应用程序用户界面的开发工具包。

以抽象窗口包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。

Swing API的大部分是AWT的补充扩展而不是直接的替代。

Swing用来绘制轻量级组件的核心渲染功能是由Java 2D提供的,这是AWT的一部分。

然而,轻量级和重量级组件在同一个应用中使用会导致Z-order不兼容。

•区别Swing为基于窗体的GUI应用开发设计,为Java跨平台特性提供了卓越的支持,它完全没有本地代码,不受操作系统的影响,做到了真正的跨平台应用,甚至能够提供本地窗口系统不支持的其他特性。

因此比AWT具有更强的实用性,同时比AWT程序拥有更加精致的外观感受。

AWT只提供基本的组件,使很多设计变得复杂,且无法在不同的平台下保持显示风格的一致性。

例如:如果建立一个按钮(Button)对象,就会有一个按钮对象会请求底层操作系统创建一个真正的按钮。

即在WindowsNT上执行那么创建的就是WindowsNT按钮;在Linux 上执行,那么创建的就是Linux按钮。

因此AWT组件外观会受到底层操作系统的影响。

1.2 Swing操作步骤1.2.1 导入Swing包import javax.swing.*;大部分的Swing程序用到AWT的基础底层结构和事件模型,因此需要导入两个包:import java.awt.*;import java.awt.event.*;如果图形界面中包括了事件处理,那么还需要导入事件处理包:import.javax.swing.event.*;1.2.2 选择界面风格Swing允许选择程序的图形界面风格常用的有Java风格,Windows风格等。

使用Java创建简单的卡片游戏

使用Java创建简单的卡片游戏

使用Java创建简单的卡片游戏-一个实战教程卡片游戏是一种受欢迎的休闲娱乐活动,它可以让玩家在游戏中享受乐趣并挑战自己的智力。

在这个实战博客中,我们将创建一个基于Java的简单卡片游戏,用于展示如何实现扑克牌或其他类型的卡片游戏。

我们将深入了解Java编程语言,以帮助您构建自己的卡片游戏。

以下是本实战博客的主要内容:项目概述准备工作创建Java项目卡片游戏规则设计卡片类创建卡片牌组实现游戏逻辑构建用户界面总结让我们开始吧!1. 项目概述在本项目中,我们将创建一个简单的Java卡片游戏,具体来说,我们将实现一个"记忆卡片游戏",玩家需要翻转卡片并找到匹配的卡片对。

这个项目将涵盖以下主要功能:创建卡片:我们将设计和创建卡片对象,每个卡片上都有一个标识符和一个面值。

卡片牌组:我们将创建一个卡片牌组,包含多个卡片,并随机排列它们。

游戏逻辑:我们将实现游戏的核心逻辑,包括卡片的翻转、匹配检查和胜利条件。

用户界面:我们将使用Java Swing库构建用户界面,使玩家能够与游戏互动。

2. 准备工作在开始之前,确保您的开发环境已设置好。

我们将使用Java编程语言,需要以下准备工作:安装Java开发工具,如Eclipse、IntelliJ IDEA等。

了解Java编程基础知识,包括类、对象、集合等。

了解如何使用GUI库创建用户界面。

3. 创建Java项目首先,创建一个新的Java项目,您可以使用Eclipse、IntelliJ IDEA等工具来完成此操作。

在项目中,我们将创建Java类来实现卡片游戏。

4. 卡片游戏规则在"记忆卡片游戏"中,玩家将面对一组卡片,每张卡片上都有一个面值。

游戏的基本规则如下:所有的卡片都面朝下,玩家不能看到它们的面值。

玩家需要依次翻转两张卡片,看它们的面值是否匹配。

如果两张卡片的面值匹配,这对卡片将保持翻开状态。

如果两张卡片的面值不匹配,这对卡片将被翻回面朝下的状态。

第12章图形界面设计(第4版)

第12章图形界面设计(第4版)


13
Company Logo Company Logo
12.3.2命令按钮、复选框和单选 按钮
JButton ( javax.swing ) 用户用鼠标单击它来控制程序运行的流程。 JButton创建后通过容器的add()将其放入容器 。 构造方法及常用方法见教材表12.16、12.17 见教材例12.5、12.4
见教材例12.9
19 Company Logo Company Logo
12.4.2 边界式布局管理器 BorderLayout
南(South)、北(North)、中(Center)五个区域。
将显示区域按地理方位分为东(East)、西(West)、
将组件加入容器中,若没有指定区域,则默认为

14
Company Logo Company Logo
12.3.2命令按钮、复选框和单选 按钮
JCheckBox和JRadioButton ( javax.swing ) JCheckBox可以单独使用,而单选按钮必须配合 javax.swing包中的ButtonGroup类将其组成单 选按钮组来使用 构造方法及常用方法见教材表12.18 见教材例12.6
中间;若将组件加入到已被占用的位置,将会取
代原先的组件。 构造方法及常用方法见教材表12.30-12.32
见教材例12.10
20 Company Logo Company Logo
利用add()添加组件时必须指出组件的摆放位置。
用网格分割,把组 提供的页面布局规则是将容器的空间划分成若干行与列 件放入网格中,先 的网格形式,在容器上添加组件时,它们会按从左到右 行后列摆放组件 、从上到下的顺序在网格中均匀排列。 网格的行数和列数可以在创建GridLayout对象的构造方 法里指定。若控件数正好是行×列,则按行、列数放置 ;若控件数超过了行×列,则先满足行。 利用GridLayout布局策略时,容器中各组件的宽度相同 ,所有组件的高度也相同,当容器尺寸发生变化时,各 组件的相对位置不变。 构造方法及常用方法见教材表12.33、12.34 见教材例12.11

Java语言程序设计:第十章 Java图形用户界面

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 的

Bootstrap4卡片布局与轮播图应用

Bootstrap4卡片布局与轮播图应用

Bootstrap4卡片布局与轮播图应用Bootstrap4 卡片布局与轮播图应用Bootstrap 是一套用于开发响应式和移动设备优先的前端开发框架,其中的卡片布局和轮播图应用是非常常见和重要的功能。

本文将介绍Bootstrap4 中卡片布局和轮播图应用的使用方法和注意事项。

一、卡片布局卡片布局是一种常见的网页内容展示方式,常用于显示产品、文章、用户信息等。

Bootstrap4 提供了简单易用且美观的卡片布局组件,可以轻松构建出各种风格的卡片。

1.1 卡片基础布局卡片基础布局是最简单的卡片样式,通过添加 Bootstrap4 提供的class 属性即可实现。

```html<div class="card"><img src="card-img.jpg" class="card-img-top" alt="Card Image"><div class="card-body"><h5 class="card-title">Card Title</h5><p class="card-text">Card Content</p><a href="#" class="btn btn-primary">Read More</a></div></div>```上述代码中,`card` 类表示卡片的容器,`card-img-top` 类表示卡片的顶部图片,`card-body` 类表示卡片的内容区域,`card-title` 类表示卡片的标题,`card-text` 类表示卡片的文本内容,`btn` 和 `btn-primary` 则表示一个按钮及其样式。

java JMenu菜单

java  JMenu菜单

java JMenu菜单在一个窗口中,经常需要给窗口添加菜单条。

在Java中这一部分是由JMenuBar、JMenu和JMenuItem三个类实现的,分别对应菜单条、菜单和菜单项。

1.菜单栏(JMenuBar)创建菜单栏是制作菜单的第一步,并JMenuBar的构造方法相当简单,如通过“JMenuBar TestJMenuBar=new JMenuBar();”语句即可创建。

而在设置菜单栏时,可以通过表9-22所示的常用方法。

需要说明的是,JMenuBar类根据JMenu添加的顺序从左到右显示,并建立整数索引。

2.菜单(JMenu)在添加完菜单栏后,并不会显示任何菜单内容,所以还需要在菜单栏中添加菜单内容。

菜单内容的JMenu类的构造方法有4种:●JMenu( ) 构造一个空菜单。

●JMenu(Action a) 构造一个菜单,菜单属性由相应的动作来提供。

●JMenu(String s) 用给定的标志构造一个菜单。

●JMenu(String s,Boolean b) 构造一个新JMenu,用提供的字符串作为其文本并指定其是否为分离式(tear-off)菜单。

在构造完后,使用JMenuBar类的add方法添加到菜单栏中。

而JMenu的常用方法如表9-23所示。

3.菜单项(JMenuItem)在菜单中可以添加不同的内容,可以是菜单项(JMenuItem),可以是一个子菜单,也可以是分隔符。

子菜单的添加是直接将一个子菜单添加到母菜单中,而分隔符的添加只需要将分隔符作为菜单项添加到菜单中。

菜单的该实现是一个包含JMenuItem的弹出窗口,用户选择JMenuBar上的项时会显示该JMenuItem。

除JMenuItem之外,JMenu还可以包含JSeparator。

其菜单项的构建方法如下:●JMenuItem() 创建不带有设置文本或图标的JMenuItem。

●JMenuItem(Action a) 创建从指定的Action获取其属性的菜单项。

java 选项卡面板

java  选项卡面板
ImageIcon icon = new ImageIcon("News.png");
tabbedPane.addTab("猕猴桃", icon, null);
tabbedPane.addTab("桃子", icon, null);
tabbedPane.addTab("苹果", icon, null);
{
int n = tabbedPane.getSelectedIndex();
loadTab(n);
}
}
});
}
(4)在loadTab( )方法中,先返回选项卡的标题,并通过标题名称,读取与标题同名的图像。然后将n序号的选项面板,为当前的面板,并显示所读取的图片。最后,再选项面板标题前面添加图标。
private void loadTab(int n)
frame.setVisible(true);
}
}
(2)再定义一个TabbedPane类和构造该类中的方法,并将该类继承JFrame包。
然后,设置窗口的标题和大小,并实例化JTabbedPane()方法,以及实例ImageIcon("News.png")方法,并读取当前目录中的News.png图像。
{
String title =tabbedPane.getTitleAt(n);
ImageIcon planetIcon = new ImageIcon(title + ".jpg");
tabbedPane.setComponentAt(n, new JLabel(planetIcon));
tabbedPane.setIconAt(n, new ImageIcon("News1.png"));

第9章 图形用户界面

第9章 图形用户界面

Java语言程序设计
第9章 图形用户界面
9.1 GUI概述
Java语言程序设计
第9章 图形用户界面
9.1 GUI概述
ponent类是许多组件类(如Button、Label)的父类,Component类中封装了组件通用的方法和 属性,如图形的组件对象、大小、显示位置、前景色、背景色、边界、可见性等,因此许多组件也继承了 Component类的成员方法和成员变量,这些成员方法是许多组件共有的方法,Component类常见的成员方法 如表9-1所示。
Java语言程序设计
第9章 图形用户界面
9.1 GUI概述
Java应用程序的图形用户界面(GUI)是通过Java API提供的java.awt或javax.swing包中的组件实现的。 这些组件所构成的GUI系统通常包含以下几个部分: (1)基本的图形用户界面组件:如菜单、按钮、文本字段等,展示系统可用的操作; (2)容器组件,如窗口、面板等,用于容纳基本组件; (3)布局管理组件,负责容器中组件的布局,进一步美化图形用户界面; (4)事件处理,用户通过图形界面进行操作时,会引发相应的事件,这些事件由一些特定的图形用户 界面组件监听并处理。 Java的java.awt和javax.swing包中包含了许多有关图形界面的类,AWT(Abstract Window Toolkit),中文译 为抽象窗口工具包,是一组Java类,此组java类允许创建图形用户界面,AWT提供用于创建生动而高效 的GUI的各种组件。Swing组件是在AWT组件基础上发展起来的新型GUI组件,完善了GUI组件的功能, 且实现时不包含依赖特定平台的代码,有更高的平台无关性和更好的移植性。因此本章主要介绍Swing 组件的用法,学习了Swing组件的用法后也可容易地学会AWT组件的用法。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

/**
* qq登陆界面
* 选项卡窗格
* 面板
* 标签
*/
package com.test1;
import java.awt.*;
import javax.swing.*;
public class pp77 extends JFrame{
//北部区域
JLabel jl1;//一个标签
//南部区域
JButton jb1,jb2,jb3; //3个按钮放到一个面板上 JPanel jp1;
//中部区域
JTabbedPane jtp;//一个选项卡窗格
JPanel jp2,jp3,jp4;//3个选项卡页
JLabel jl2,jl3,jl4,jl5;//选项卡内标签
//号码输入文本框
JTextField jtf;
//登录密码框
JPasswordField jpf;
//清除号码的Button
JButton jb4;
//隐身登陆、记住密码
JCheckBox jcb1,jcb2;
public static void main(String[] args) {//主函数
// TODO Auto-generated method stub
pp77 op=new pp77();
}
public pp77()//构造函数
{
jl2=new JLabel("QQ号码",JLabel.CENTER);//标签居中
jl3=new JLabel("QQ密码",JLabel.CENTER);
jl4=new JLabel("忘记密码",JLabel.CENTER);
////
// jl4.setFont(new Font("宋体",Font.PLAIN,16));
jl4.setForeground(Color.BLUE);//设置字体颜色
//
jl5=new JLabel("<html><a href=''>申请密码保</a>");
jl5.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));//定义手型鼠标
// 文本框密码框按钮
jtf=new JTextField();
jpf=new JPasswordField();
jb4=new JButton("清楚密码");
// //复选框
jcb1=new JCheckBox("隐身登陆");
jcb2=new JCheckBox("记住密码");
//北部区域
jl1=new JLabel("北部区域");
//南部
jp1=new JPanel();
jb1=new JButton("jbutton1");
jb2=new JButton("jbutton2");
jb3=new JButton("jbutton3");
//
// //中部区域
jtp=new JTabbedPane();//选项卡窗格 jp2=new JPanel();//面板
// jp2.setBackground(Color.black);
jp3=new JPanel();//面板
jp3.setBackground(Color.black);
jp4=new JPanel();//面板
jp4.setBackground(Color.yellow);
//
// //将面板添加到选项卡窗格上
jtp.add("QQ号码",jp2);//选项卡窗格名 jtp.add("手机号码",jp3);//
jtp.add("电子邮箱",jp4);
//
// //设置布局
jp2.setLayout(new GridLayout(3, 3));//选项卡 3行 3列
//
//添加组件南部
jp1.add(jb1);
jp1.add(jb2);
jp1.add(jb3);
// 添加选项卡窗格1的组件中部
jp2.add(jl2);
jp2.add(jtf);
jp2.add(jb4);
jp2.add(jl3);
jp2.add(jpf);
jp2.add(jl4);
jp2.add(jcb1);
jp2.add(jcb2);
jp2.add(jl5);
//对象窗体布局
this.add(jp1,BorderLayout.SOUTH);
this.add(jtp,BorderLayout.CENTER);
this.add(jl1,BorderLayout.NORTH);
this.setIconImage((new ImageIcon("qqq.jpg")).getImage());//给窗体设置图标 this.setSize(330, 270);
this.setLocation(350,250);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setVisible(true); }
}。

相关文档
最新文档