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)