swing实现鼠标动态调整面板大小解决方案
- 格式:docx
- 大小:20.12 KB
- 文档页数:16
文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.
1文档收集于互联网,如有不妥请联系删除. swing实现鼠标动态调整面板大小解决方案
篇一:java-修改鼠标形状
Java窗体中如何改变鼠标光标的形状
博客分类:
? Java
大家都知道,鼠标的光标在不同的状态下呈现出不同的形状,但是怎么实现鼠标形状的改变的呢,现在我简单的说一下它的实现。在这个类中有鼠标的多种形状
CROSSHAIR_CURSOR
十字光标类型。
CUSTOM_CURSOR
与所有定制光标有关的类型。
DEFAULT_CURSOR
默认光标类型(如果没有定义光标,则获取该设置)。
E_RESIZE_CURSOR
调整窗口右边框大小的光标类型。
HAND_CURSOR
手状光标类型。
MOVE_CURSOR
移动光标类型。
N_RESIZE_CURSOR 文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.
2文档收集于互联网,如有不妥请联系删除. 调整窗口上边框大小的光标类型。
String name
光标的用户可视名称。
NE_RESIZE_CURSOR
调整窗口右上角大小的光标类型。
NW_RESIZE_CURSOR
调整窗口左上角大小的光标类型。
static Cursor[] predefined
S_RESIZE_CURSOR
调整窗口下边框大小的光标类型。
SE_RESIZE_CURSOR
调整窗口右下角大小的光标类型。
SW_RESIZE_CURSOR
调整窗口左下角大小的光标类型。
TEXT_CURSOR
文字光标类型。
W_RESIZE_CURSOR
调整窗口左边框大小的光标类型。
WAIT_CURSOR
等待光标类型。
在窗体中有个setCursor(_CURSOR )的方法,比如,在JFrame中就这样用,窗体对象名.setCursor(_CURSOR ),然文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.
3文档收集于互联网,如有不妥请联系删除. 后鼠标在窗体中就变成了手状光标。
当然你也可以自己创建新的光标类型,首先,把需要的图标文件放在Java工程的目录下,光标形状类型coursor
=
().createCustomCursor(new
ImageIcon("image/").getImage(),new Point(10,20),
"stick");其中的image是Java工程下的文件名,为图片文件,new
ImageIcon("image/").getImage()的意思是创建一个图片对象并得到图片,new Point10,20)的意思是创建一个空间坐标点,好了,然后在和上面一样调用setCursor()方法就可以了,只不过里面的变量变为coursor了,哈哈,是不是很简单啊??
呵呵,当然,光标在什么时呈现什么形状,那就得添加鼠标监听器了,这得看你自己的设计咯……
有什么不对之处,请各位大虾指教指教!!!!!!!!
篇二:JAVA SWING图形界面程序设计实验报告(附完整代码)
图形界面(GUI)程序设计
一、 课题内容和要求
内容:设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.
4文档收集于互联网,如有不妥请联系删除. 后的结果。
要求:学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法。通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法。
二、设计思路分析
class RMBtoDollar:主类,调用主函数。
class change:设置界面,并通过界面上的事件触发实现汇率转换。
三、概要设计
public class RMBtoDollar{
}
class change extends JFrame implements
MouseListener {
JLabel l1, l2,l3; JTextField tf1, tf2; JButton
b; double RMB, Dollar; public change(); public void
mousePressed(MouseEvent e); public void
mouseClicked(MouseEvent e);
public void mouseEntered(MouseEvent e);
public void mouseExited(MouseEvent e);
public void mouseReleaseed(MouseEvent e);//鼠标释放时进行转换 } public static void main(String[]
args); 文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.
5文档收集于互联网,如有不妥请联系删除. 四、详细设计
import *;
import *;
import *;
public class RMBtoDollar {
public static void main(String[] args) {
new change();
}
}
class change extends JFrame implements
MouseListener {
JLabel l1, l2,l3;
JTextField tf1, tf2;
JButton b;
double RMB, Dollar;
public change() {//添加组件和设置布局
l1 = new JLabel("人民币/元: ");
l2 = new JLabel("美元/dollar:");
l3=new JLabel("(汇率:)");
tf1 = new JTextField(12);
tf2 = new JTextField(12);
b = new JButton("转换"); 文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.
6文档收集于互联网,如有不妥请联系删除. add(l1);
add(tf1);
add(l2);
add(tf2);
add(l3);
add(b);
setLayout(new FlowLayout());
setTitle("人民币转换为美元");
setBounds(300, 300, 300, 150);
setVisible(true);
setDefaultCloseOperation(_ON_CLOSE);
(this);//鼠标事件监视器
}
public void mousePressed(MouseEvent e) {
if (() != null) {// tf2 test 默认初始设为空
("");
}
}
public void mouseClicked(MouseEvent e) {
}
} public void mouseEntered(MouseEvent e) { }
public void mouseExited(MouseEvent e) { } public void 文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.
7文档收集于互联网,如有不妥请联系删除. mouseReleased(MouseEvent e) { if (() != null) {// 检查tf1 test 是否为空try {// 取异常 RMB = (());// 字符转为double型 Dollar = RMB / ;//转换 ("" + Dollar);//
显示} catch (Exception ex) { ("");// 如果输入不是数字,设为空} } }
五、测试数据及其结果分析
1正常输入:
2输入字符串不能转为double型时清空输入框:
3结果:输出正常。
六、调试过程中的问题
一开始没有对输入流输入的字符串转为double型数据,导致不能转换,采用转为double型并抛出异常后解决了该问题。
七、程序设计总结
1、通过该实验掌握了JAVA图形界面程序设计的方法。
2、熟悉了JAVA SWING中的容器、组件、布局以及事件监视器和事件接口的使用。
3、在逐步地优化和调试中实现了一个较实用的界面。
篇三:8-Swing程序设计(练习题)
1、按边界布局添加
5个按钮
( 文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.
8文档收集于互联网,如有不妥请联系删除. 初级
)
步骤:
(1)新建BorderLayoutTest项目
(2)在项目中新建BorderLayoutTest类,位于com包中
(3)导入相关的类:*;、*;
(4)在main()方法中完成以下操作:
①创建一个窗口对象:JFrame f=new JFrame(“Border
Style”);
②设置窗口的大小:(int宽度,int高度);
③设置界面的显示位置:(int水平位置,int垂直位置);
④设置界面的背景颜色:(Color 颜色);
⑤设置窗口可见:(true);
⑥设置窗口关闭方式:(_ON_CLOSE);
⑦创建5个显示文字的按钮:JButton b1=new
JButton(String 文字信息);
⑧设置窗口布局方式:(new BorderLayout());
⑨按以下两种方式之一添加按钮组件到窗口中:
? add(String s, Component comp)
s:表示位置(“South”、”North”、”East”、”West”、”Center”) ? add(Component comp,intx)