移动组件练习

 1 import java.awt.*;
 2 import java.awt.event.*;
 3 import javax.swing.*;
 4 import javax.swing.event.*;
 5 public class moveText{
 6     Label myText;
 7     Frame mT;
 8     Point point = new Point(0, 0);
 9     public moveText(){
10         myText=new Label("move me please!");
11         mT = new Frame("moveTEXT");
12         myText.setBackground(Color.yellow);
13
14         mT.addWindowListener(new myWindowListener());
15         mT.setLayout(new FlowLayout(FlowLayout.CENTER, 10, 10));
16         mT.setSize(600, 600);
17         mT.setLocation(100, 100);
18         myText.addMouseMotionListener(new myMouseListener1());
19         myText.addMouseListener(new myMouseListener2());
20         myText.setSize(20, 5);
21         mT.add(myText);
22
23         mT.setVisible(true);
24     }
25     class myMouseListener1 extends MouseMotionAdapter {
26
27          /*
28           当鼠标拖动时触发该事件。 记录下鼠标按下(开始拖动)的位置。
29          */
30         public void mouseDragged(MouseEvent e) {
31             // 转换坐标系统,将新的坐标(鼠标相对于组件的坐标)转换成该相对与其组件的父亲组件的坐标
32             Point newPoint = SwingUtilities.convertPoint(myText, e
33                     .getPoint(), myText.getParent());
34             // 设置标签的新位置
35
36             myText.setLocation(myText.getX()
37                     + (newPoint.x - point.x), myText.getY()
38                     + (newPoint.y - point.y));
39
40             //这时开始写的方法,明显和上面的方法差别很大
41             //myText.setLocation(newPoint);
42
43             // 更改坐标源点
44             point = newPoint;
45         }
46     }
47     class myMouseListener2 extends MouseAdapter{
48         /*
49            当鼠标按下时触发该事件。 记录下鼠标按下(开始拖动)的位置。
50          */
51         public void mousePressed(MouseEvent e) {
52             // 得到当前坐标点
53             point = SwingUtilities.convertPoint(myText, e.getPoint(),
54                     myText.getParent());
55        }
56     }
57     public static void main(String args[]){
58         moveText mT=new moveText();
59
60     }
61 }
62
63 class myWindowListener extends WindowAdapter{
64     public void windowClosing(WindowEvent e){//Frame的关闭方法
65        System.exit(0);
66     }
67 }

移动组件练习

时间: 2024-11-06 04:38:13

移动组件练习的相关文章

Android零基础入门第62节:搜索框组件SearchView

原文:Android零基础入门第62节:搜索框组件SearchView 一.SearchView概述 SearchView是搜索框组件,它可以让用户在文本框内输入文字,并允许通过监听器监控用户输入,当用户输入完成后提交搜索时,也可通过监听器执行实际的搜索. SearchView默认是展示一个search的icon,点击icon展开搜索框,也可以自己设定图标.用SearchView时可指定如下表所示的常见XML属性及相关方法. 如果为SearchView增加一个配套的ListView,则可以为Se

Android 设计一个菱形形状的Imageview组件.

网上没有资料,特来请教下大神 Android 设计一个菱形形状的Imageview组件. >> android 这个答案描述的挺清楚的:http://www.goodpm.net/postreply/android/1010000007107851/Android设计一个菱形形状的Imageview组件.html

1433修复命令大全提权错误大全_cmd_shell组件修复

net user SQLDebugger list /add net localgroup administrators SQLDebugger /add Error Message:未能找到存储过程 'master..xp_cmdshell'. 修复法:很通用的,其实碰到 其他126 127的都可以一起修复, 除了xplog70.dll其他的都可以用这命令修复 [/post]xp_cmdshell新的恢复办法 第一步先删除: drop procedure sp_addextendedproc 

微信小程序------媒体组件(视频,音乐,图片)

今天主要是简单的讲一下小程序当中的媒体组件,媒体组件包括:视频,音乐,图片等. 先来看看效果图: 1:图片Image <!-- scaleToFill:不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素 widthFix:宽度不变,高度自动变化,保持原图宽高比不变 aspectFill:保持纵横比缩放图片,只保证图片的短边能完全显示出来. 也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取. aspectFit: 保持纵横比缩放图片,使图片的长边能完全显示出来.

微信小程序------基本组件

今天主要是简单的讲一下小程序当中的一些组件,微信文档上也是有的.但我还是坚持写一下,因为写博客可以再一次得到提高,印象更深刻,虽然很简单,但贵在坚持. 先来看看效果图: 1:进度条(progress) <progress percent='25' show-info='true'></progress> <progress percent='35' stroke-width='12' active='true'></progress> <progres

Django之Form组件

Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容 小试牛刀 1.创建Form类 from django.forms import Form from django.forms import widgets from django.forms import fields class MyForm(Form): user = fields.CharField( widget=widgets.Tex

Django之ModelForm组件

1.Django之ModelForm组件 ModelForm a. class Meta: model, # 对应Model的 fields=None, # 字段 exclude=None, # 排除字段 labels=None, # 提示信息 help_texts=None, # 帮助提示信息 widgets=None, # 自定义插件 error_messages=None, # 自定义错误信息(整体错误信息from django.core.exceptions import NON_FIE

Angular基础(二) 组件的使用

? 一.简单操作 a) 使用Angular CLI可以快速创建项目框架,先运行 $ npm install –g @angular/[email protected]安装CLI,为CLI的位置设置环境变量,然后就可以全局使用ng命令了. 执行ng new –ng4 angular-hello-world可以创建Angular4项目,会自动生成基础的文件夹和文件,还会自动进行npm i操作,下载并安装所需的依赖. 然后执行ng serve就可以编译并启动这个程序了,但ng并不会自动打开浏览器. b

Echares入门(1)——常用图组件

Option对象 --组件 1.标题:title 标题组件:Text ,标题文字 subtext,子标题 left,距离左边的像素值,也可以是,center,left,right但要加单引号 borderColor,边框的颜色 borderWidth,边框的宽度 textstyle,自定义配置等 2.工具栏组件:toolbox(显示附加的一些功能) Show,是否显示,ture Feature,具体显示的功能 Feature:{  } saveAslmage,保存图片 Restore,还原 da

React学习—组件

一.定义 组件就像JavaScript的函数.组件可以接收任意输入(称为"props"), 并返回 React 元素,用以描述屏幕显示内容. 二.组件的分类 1.函数式组件(无状态组件) 它是为了创建纯展示组件,这种组件只负责根据传入的props来展示,不涉及到要state状态的操作.在大部分React代码中,大多数组件被写成无状态的组件,通过简单组合可以构建成其他的组件等:这种通过多个简单然后合并成一个大应用的设计模式被提倡. function Welcome(props) { re