继承JButton,使用borderFactory类,当鼠标移入、移出、被点击时有不同的外观。
import javax.swing.*;
import javax.swing.border.*;
import java.awt.event.*;
import java.awt.*;
/** *//**
* JButton类按钮的一种扩展,当鼠标移入、移出、被点击时有不同的外观
*/
public class ZButton extends JButton
{
private Border borderOut;
private Border borderIn;
private Border borderPressed;
public ZButton()
{
init();
}
/** *//**初始化*/
private void init()
{
borderOut = BorderFactory.createEmptyBorder(); borderIn=BorderFactory.createTitledBorder(BorderFactory.createBevelBorder(BevelBorder.RAISED,Color.white,Color.white, new Color(148, 145, 140),new Color(103, 101, 98)),"鼠标进入",TitledBorder.CENTER,TitledBorder.BELOW_TOP);
borderPressed=BorderFactory.createTitledBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED,Color.white,Color.white,new Color(148, 145, 140),new Color(103, 101, 98)),"鼠标摁下",TitledBorder.CENTER,TitledBorder.BELOW_TOP);
this.setBorder( borderOut );
this.addMouseListener(new java.awt.event.MouseAdapter()
{
public void mouseEntered(MouseEvent e) {
thisButton_mouseEntered(e);
}
public void mouseExited(MouseEvent e) {
thisButton_mouseExited(e);
}
public void mousePressed(MouseEvent e) {
thisButton_mousePressed(e);
}
public void mouseReleased(MouseEvent e) {
thisButton_mouseReleased(e);
}
});
}
/** *//**鼠标移入时的外观*/
void thisButton_mouseEntered(MouseEvent e){
if( this.isEnabled() )
this.setBorder( borderIn );
}
/** *//**鼠标移出时的外观*/
void thisButton_mouseExited(MouseEvent e){
this.setBorder( borderOut );
}
/** *//**鼠标被点击时的外观*/
void thisButton_mousePressed(MouseEvent e){
if( this.isEnabled())
this.setBorder( borderPressed );
}
/** *//**鼠标被释放时的外观*/
void thisButton_mouseReleased(MouseEvent e)
{
if( (this.getBounds().contains(e.getX(), e.getY())) && this.isEnabled() )
this.setBorder( borderIn );
else
this.setBorder( borderOut );
}
}
ZButton继承了JButton,可以直接使用ZButton,下面是测试程序,一定要把ZButton的源文件和测试程序放在同一个目录,否则须设置环境变量.
import javax.swing.*;
import javax.swing.border.*;
import java.awt.event.*;
import java.awt.*;
public class Test{
public Test(){
JFrame f= new JFrame();
Container contentPane=f.getContentPane();
ZButton a=new ZButton();
contentPane.add(a);
f.setTitle("just a test");
f.setSize(new Dimension(200,80));
f.setVisible(true);
}
public static void main(String []args){
Test q=new Test();
}
}
分享到:
相关推荐
易语言源码易语言捕获鼠标判断鼠标移入移出事件源码.rar 易语言源码易语言捕获鼠标判断鼠标移入移出事件源码.rar 易语言源码易语言捕获鼠标判断鼠标移入移出事件源码.rar 易语言源码易语言捕获鼠标判断鼠标移入...
在易语言中处理“鼠标移入移出窗口消息”是一项常见的交互设计任务,对于创建用户友好的图形用户界面(GUI)至关重要。 在Windows操作系统中,当鼠标指针进入或离开一个窗口时,系统会产生WM_MOUSEHOVER和WM_...
易语言鼠标移入移出事件模块源码.zip易语言项目例子源码下载易语言鼠标移入移出事件模块源码.zip易语言项目例子源码下载 1.合个人学习技术做项目参考 2.适合学生做毕业设计参考 3.适合小团队开发项目参考
综上所述,通过PyQt5,我们可以轻松地实现自定义标题栏、鼠标移入移出效果以及窗口切换等基本操作,为用户提供更加友好和个性化的界面。同时,结合其他功能如文件处理、网络通信等,我们可以构建出功能强大的桌面...
易语言源码易语言鼠标移入移出窗口消息源码.rar 易语言源码易语言鼠标移入移出窗口消息源码.rar 易语言源码易语言鼠标移入移出窗口消息源码.rar 易语言源码易语言鼠标移入移出窗口消息源码.rar 易语言源码易语言...
在这个"VB image鼠标移入移出换图"的主题中,我们将探讨如何利用VB的image控件以及鼠标事件来实现这一功能。 首先,VB中的Image控件是一个用于显示静态图像的组件,它支持多种图像格式,如BMP、JPEG、GIF等。Image...
通过以上介绍,你应该对易语言中如何捕获和处理鼠标移入移出事件有了清晰的理解。在实际开发中,你可以根据具体需求调整和扩展这个示例,例如添加更多的鼠标事件处理,或者结合其他窗口功能实现更复杂的交互逻辑。...
易语言鼠标移入移出事件模块源码,鼠标移入移出事件模块,删除鼠标移入移出事件,删除所有鼠标移入移出事件,添加鼠标移入移出事件,消息钩子回调,鼠标移入移出事件,执行子程序_,取鼠标所在窗口句柄_,CallWindowProc,...
易语言鼠标移入移出事件
鼠标移入移出方向判断,通过鼠标移入的方向做出效果,
js 实现 鼠标移入移出时颜色变化! 值得下载看看!资源免费,大家分享!!
易语言鼠标移入移出窗口消息源码。@资源源码站。
删除鼠标移入移出事件,删除所有鼠标移入移出事件,添加鼠标移入移出事件,消息钩子回调,鼠标移入移出事件,执行子程序_,取鼠标所在窗口句柄_,CallWindowProc,SetWindowLong,GetCursorPos,ReleaseCapture,SetCapture,...
js 实现 checkbox鼠标移入移出的特效值得下载看看!资源免费,大家分享!!
该代码可以实现表格中鼠标在不同行间移动来实现输鼠标移入移出 有颜色提醒的效果
在易语言中,"鼠标移入移出事件"是编程中常见的交互功能,主要用于处理用户通过鼠标与界面元素的交互行为。本文将深入探讨易语言中的鼠标移入和移出事件,以及如何利用这些事件来增强程序的用户体验。 首先,我们...
《易语言源码鼠标移入移出事件模块详解》 易语言,作为一款为中国用户设计的编程语言,以其直观易懂的语法结构深受广大编程初学者喜爱。在易语言中,鼠标移入移出事件是界面交互设计中的重要组成部分,它们能够使...
易语言源码易语言鼠标移入移出事件模块源码.rar 易语言源码易语言鼠标移入移出事件模块源码.rar 易语言源码易语言鼠标移入移出事件模块源码.rar 易语言源码易语言鼠标移入移出事件模块源码.rar 易语言源码易语言...