`

java隐藏标题栏并且可以移动例子

阅读更多

import java.awt.event.MouseAdapter;
import java.awt.event.MouseMotionListener;
import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.border.BevelBorder;

public class EasyMove extends MouseAdapter implements MouseMotionListener {
	private Point offset;
	private Component host;

	public static void main(String[] args) {
		JFrame frm = new JFrame("EasyMove demo.");
		frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frm.setSize(300, 300);
		frm.setUndecorated(true);// 影藏边框
		frm.getRootPane().setBorder(
				BorderFactory.createBevelBorder(BevelBorder.RAISED));
		new EasyMove().install(frm);
		JButton exit = new JButton("Exit");
		exit.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				System.exit(0);
			}
		});
		frm.getContentPane().add(exit, BorderLayout.SOUTH);
		frm.setVisible(true);
	}

	public synchronized void install(Component comp) {
		uninstall();
		host = comp;
		host.addMouseListener(this);
		host.addMouseMotionListener(this);
	}

	public synchronized void uninstall() {
		if (host != null) {
			host.removeMouseListener(this);
			host.removeMouseMotionListener(this);
			host = null;
		}
	}

	public void mousePressed(MouseEvent e) {
		if (e.getSource() == host)
			offset = e.getPoint();
	}

	public void mouseDragged(MouseEvent e) {
		if (e.getSource() != host)
			return;
		final int x = host.getX();
		final int y = host.getY();
		final Point lastAt = e.getPoint();
		host.setLocation(x + lastAt.x - offset.x, y + lastAt.y - offset.y);
	}

	public void mouseMoved(MouseEvent e) {

	}
}
 

 

java swing:http://www.java2s.com/Code/Java/Swing-JFC/CatalogSwing-JFC.htm

分享到:
评论

相关推荐

    ScrollView实现自定义RelativeLayout跟随手势上下滑动显示隐藏

    当用户触摸屏幕并移动手指时,我们计算滑动距离,根据滑动方向决定是否执行显示或隐藏标题栏的动画。 为了更全面地了解这个项目,你可以从提供的`LinglingyiScrollViewDemo`压缩包中找到完整的代码示例,包括布局...

    使用JFrame编写类似QQ好友列表悬浮界面例子,JFrame初学

    通过继承`javax.swing.JFrame`类,你可以创建一个包含标题栏、边框以及默认关闭操作的窗口。在创建`JFrame`实例后,通常会设置其大小、位置、可见性等属性,例如: ```java JFrame frame = new JFrame("我的好友...

    Swing 多选栏控件

    在标题提到的"Swing 多选栏控件"中,很可能是指使用了`JList`的多选模式,或者可能是定制的组件,如带有左右两部分的双列选择器,用户可以通过双击将项目在两列之间移动。 1. **JList**:`JList`是一个可以显示一组...

    j2me全屏显示的例子程序代码

    为了实现全屏,需要隐藏系统标题栏和其他UI元素。 3. **System.getProperty()**:Java ME中,可以使用`System.getProperty("microedition.display.fullscreen")`来检查设备是否支持全屏模式。如果返回`true`,则...

    桌面小闹钟 在屏幕右边可以像QQ一样隐藏哦!!

    【标题】"桌面小闹钟"是一款专为个人电脑用户设计的小巧实用的桌面应用程序,它可以在您的屏幕上以类似QQ的样式隐藏,提供方便且不占空间的计时提醒服务。 【描述】作为一款初学者的项目,"桌面小闹钟"展示了如何...

    java script 在html中的小应用

    标题栏的闪动效果是通过定时器改变文本颜色或字体大小来实现的。使用`setInterval`和`clearInterval`来控制动画的开始和结束,同时修改CSS属性。 8. **文字打字机效果** (9 文字打字机效果.html): 打字机效果是...

    实现屏幕截图的小程序 java课程设计.pdf

    `JWindow` 是一个没有边框的窗口,而`JFrame` 是带有标准标题栏和关闭按钮的标准窗口。 - 使用`MouseListener` 和 `MouseMotionListener` 接口来监听鼠标的点击和移动事件,这是实现截图功能的关键。 2. **屏幕...

    Android DownLoadManager小例子

    // 设置显示在通知栏的标题和描述 request.setTitle("正在下载文件"); request.setDescription("这是从example.com下载的文件"); // 添加其他可选参数,如允许在移动网络下下载 request....

    javascript经典例子.txt

    - 实现方法:通过JavaScript监听事件并更新状态栏或标题栏的内容。 - **5.8 双击后,网页自动滚屏** - 描述:双击页面后,页面会自动滚动到顶部或底部。 - 实现方法:使用JavaScript监听双击事件,并通过滚动API...

    Java坦克大战1.0版源代码

    在Java编程语言中,"Java坦克大战1.0版源代码"是一个实现经典坦克游戏的项目。这个项目可能包括游戏的各个组件,如游戏逻辑、用户界面、游戏对象(如坦克、子弹、障碍物)以及游戏状态管理。下面将详细讨论其中涉及...

    21.导航栏颜色设置

    以下是一个在Java中设置导航栏颜色的例子: ```java Toolbar toolbar = findViewById(R.id.toolbar); toolbar.setBackgroundColor(ContextCompat.getColor(this, R.color.your_color)); ``` 如果你使用Kotlin,代码...

    简单的程序底部Tab例子

    8. `header.png`可能是指界面顶部的标题栏或者导航栏。 综合以上分析,这篇博客可能涵盖了以下几个方面的技术点: 1. **UI设计**:讲解如何设计符合平台规范的底部Tab,包括图标的设计和状态切换。 2. **编程实现**...

    高仿微信的主页面的例子

    【标题】"高仿微信的主页面的例子"所涉及的知识点主要集中在移动应用开发领域,尤其是Android平台。这个示例代码旨在教你如何构建一个类似微信的主界面,其中包括了微信的一些核心功能和视觉元素。在Android开发中,...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例255 拖动没有标题栏的窗体 325 实例256 取消窗体标题栏与边框 326 实例257 设置闪烁的标题栏 328 11.4 设置窗体的背景 329 实例258 设置窗体背景颜色为淡蓝色 329 实例259 实现带背景图片的窗体 330 实例260 使...

    SYBViewPager(自定义下划线标题的ViewPager).rar

    开发者通常会将这样的组件整合到自己的应用程序中,以创建一个具有个性化标题栏的ViewPager。通过这个自定义组件,开发者可以轻松地在每个页面之间切换时看到当前页面的标题,并通过下划线的变化来指示当前选中的...

    Android仿京东顶部搜索框滑动伸缩动画效果

    标题栏通常固定在屏幕顶部,而搜索框则可以在用户上滑时隐藏,下滑时显示。为了实现这一效果,我们需要自定义一个滑动控件,以便能够监听和处理滑动事件。 在代码实现中,我们创建了一个名为`...

    左侧菜单栏控制右侧页面内容切换

    在这个场景中,我们关注的是一个基于"jQuery + Bootstrap"的示例项目,它实现了左侧菜单栏控制右侧页面内容切换的功能,并且结合了Bootstrap的弹框展示。下面我们将深入探讨这个项目的核心技术和实现细节。 首先,...

Global site tag (gtag.js) - Google Analytics