GuiHelloWorld
package com.home.test;
import java.awt.Color; import java.awt.Cursor; import java.awt.Font; import java.awt.Point; import java.awt.event.MouseEvent;
import javax.swing.JLabel; import javax.swing.JWindow; import javax.swing.event.MouseInputListener;
public class GuiHelloWorld extends JWindow { private static final long serialVersionUID = 1L; JLabel titleLbl; Font GuiHelloWorldFont;
public GuiHelloWorld() { GuiHelloWorldFont = new Font("幼圆", Font.ITALIC, 28); this.getContentPane().setBackground(new Color(0x99FF66)); this.setBounds(400, 200, 200, 60); this.setLayout(null); titleLbl = new JLabel(" Hello World!"); titleLbl.setFont(GuiHelloWorldFont); titleLbl.setOpaque(true); titleLbl.setBackground(new Color(0x66CC00)); titleLbl.setBounds(0, 0, 200, 60); this.add(titleLbl); // 鼠标事件处理类 MouseEventListener mouseListener = new MouseEventListener(this); titleLbl.addMouseListener(mouseListener); titleLbl.addMouseMotionListener(mouseListener); this.setVisible(true); }
public static void main(String[] args) { new GuiHelloWorld(); } }
class MouseEventListener implements MouseInputListener { Point origin; // 鼠标拖拽想要移动的目标组件 GuiHelloWorld frame;
public MouseEventListener(GuiHelloWorld frame) { this.frame = frame; origin = new Point(); }
public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub
}
public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub origin.x = e.getX(); origin.y = e.getY(); }
public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub
}
public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub this.frame.setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR)); }
public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub this.frame.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); }
public void mouseDragged(MouseEvent e) { // TODO Auto-generated method stub Point p = this.frame.getLocation(); this.frame.setLocation(p.x + (e.getX() - origin.x), p.y + (e.getY() - origin.y)); }
public void mouseMoved(MouseEvent e) { // TODO Auto-generated method stub
}
}
GuiHelloWorld的更多相关文章
- 软件工程——移动的HelloWorld
package disiti; import java.awt.Color; import java.awt.Cursor; import java.awt.Font; imp ...
- 可移动的 HelloWorld
package com.home.test; import java.awt.Color;import java.awt.Cursor;import java.awt.Font;import java ...
随机推荐
- 八皇后问题的Python实现和C#实现
看到八皇后问题的解决思路, 感觉很喜欢. 我用C#实现的版本之前贴在了百度百科上(https://baike.baidu.com/item/%E5%85%AB%E7%9A%87%E5%90%8E%E9 ...
- 小程序布局中class='container'的bug
display:flex失效,并增加其他额外属性,暂时记录,还未查询是何原因导致,更改calss则无此问题.
- 使用with open语句(未完)
来源链接 https://blog.csdn.net/testcs_dn/article/details/45719357 读文件 读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和 ...
- SHELL-收集Oracle已应用的PSU信息
1. 命令收集版本信息 # 创建数据收集脚本文件 OPER_FILE=${EXECUTE_ID}_oper.sh if [[ "${OPER_USER}" = "${US ...
- 【转】一个域名是用哪里的DNS来解析的,电脑怎么知道找哪一个DNS呢? 我注册域名的时候会在服务商那里配置DNS解析,一般需要24小时后才能访问,我想知道,解析后的这个数据是不是会同步到世界上所有的DNS服务器呢!如果不是,当我访问我的这个域名的时候,电脑怎么知道去找到我注册的这一家的DNS服务器呢,谁告诉他的呢?
看看DNS一些基础知识,你就了解了.1.DNS就是域名服务器,他的任务就是确定域名的解析,比如A记录MX记录等等. 2.任何域名都至少有一个DNS,一般是2个.为什么要2个以上呢?因为DNS可以轮回处 ...
- CSS中background属性详解
CSS背景属性 background css 说明 background-image:url(图片的网址); 背景图 background: url( 图片的网址 ); 背景 background-c ...
- 360极速浏览器极速模式通过hosts文件切换兼容模式bat脚本
注意:需要获得管理员权限执行,且后缀为 .bat @echo offsetlocal enabledelayedexpansionset url=被替换的域名set ip=替换的域名set strNe ...
- ORA-245: In RAC environment from 11.2 onwards Backup Or Snapshot controlfile needs to be in shared location (Doc ID 1472171.1)
巡检时遇到错误如下: alert日志: Wed Dec 19 01:00:29 2018Errors in file /oracle/base/diag/rdbms/usap/usap1/trace/ ...
- 在centos7上修改docker加速镜像为阿里云
使用docker pull,命令下载镜像太慢了,默认是从国外的,本文记录下如何配置国内阿里云竞相加速方式. 登录https://cr.console.aliyun.com,如下, 阿里云会为每个用户提 ...
- Spring容器AOP的实现原理——动态代理(转)
文章转自http://blog.csdn.net/liushuijinger/article/details/37829049#comments