`
稻-草
  • 浏览: 62782 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

自定义Popup window.

 
阅读更多

基类:采用JFrame + setUndecorated(true);

 

import java.awt.Graphics;
import java.awt.event.WindowEvent;
import java.awt.event.WindowFocusListener;

import javax.swing.JFrame;
import javax.swing.SwingUtilities;

public class PopupWindow extends JFrame
{
    public PopupWindow()
    {
        setUndecorated(true);

        // setAlwaysOnTop(true);
        addWindowFocusListener(new WindowFocusListener()
        {
            public void windowGainedFocus(WindowEvent e)
            {

            }

            public void windowLostFocus(WindowEvent e)
            {
                SwingUtilities.invokeLater(new Runnable()
                {
                    public void run()
                    {
                        setVisible(false);
                        dispose();
                    }
                });
            }
        });

    }

    public void showPopup(int x, int y)
    {
        setLocation(x, y);
        setVisible(true);
        requestFocus();
    }

    @Override
    public void paint(Graphics g)
    {
        super.paint(g);
        g.drawRect(0, 0, getWidth() - 1, getHeight() - 1);
    }
}

 通过继承PopupWindow,就可以试下模拟弹出菜单。

唯一的缺点是没有阴影,看起来没有立体感。

 

效果图:


 

 这里有模拟阴影的方法, 还没试过:

http://stackoverflow.com/questions/19105242/undecorated-jframe-shadow

 

  • 大小: 11.1 KB
分享到:
评论

相关推荐

    javascript 打开页面window.location和window.open的区别.docx

    var popup = window.open("http://www.example.com", "_blank", "width=500,height=400"); ``` ##### 2. 特性 - **新窗口**:创建的是一个新的浏览器窗口,而不是在当前窗口中打开页面。 - **可配置性**:可以...

    popup:通过 window.open() 创建原生弹出窗口的组件

    var popup = window.open(url, name, features); }); ``` 在上面的代码中,我们创建了一个名为`popupWindow`的新窗口,设置了它的大小、位置和其他特性。`popup`变量现在引用了新打开的窗口,你可以通过它与窗口...

    jquery.popup.js-兼容IE8的简单jQuery模态窗口插件

    在Web开发中,模态窗口(Modal Window)是一种常见的交互设计元素,它可以在用户与主页面交互时弹出一个遮罩层,使得用户必须处理完弹出的内容后才能继续操作主页面。在JavaScript库中,jQuery以其简洁的API和广泛的...

    安卓源码分享popup实现.zip

    5. **自定义布局**:`popup_window_layout.xml`通常是PopupWindow的内容布局文件,你可以在这里设计所需的界面元素和布局结构。 6. **添加交互事件**:为PopupWindow中的按钮或其他交互元素添加点击事件,通常在`...

    分享popup实现.zip项目安卓应用源码下载

    View popupView = inflater.inflate(R.layout.popup_window, null); PopupWindow popupWindow = new PopupWindow(popupView, ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); ``` - ...

    仿微信popup window

    在Android应用开发中,...总的来说,“仿微信popup window”的实现涉及到Android的PopupWindow类、自定义动画、布局设计以及触摸事件处理等多个方面,理解并掌握这些知识点对于提升Android应用的用户体验具有重要意义。

    popup 弹出框 js

    二、自定义Popup弹出框 虽然内置的弹出框功能有限,但通过HTML、CSS和JavaScript的组合,我们可以创建高度定制的`popup`。基本步骤如下: 1. 在HTML中,为弹出框创建一个隐藏的`div`元素,包含所有必要的内容和...

    popup window

    对于Java开发者,可以使用Java Swing或JavaFX中的JOptionPane类来创建简单的Popup Window,或者自定义JFrame或JDialog来构建更复杂的弹窗。在Android开发中,PopupWindow类允许开发者创建可定制的浮动视图,而iOS...

    js中window对象的方法1

    var popup = window.open('somefile.html'); ``` 如果无法创建新窗口,返回`null`。此方法可用于创建弹出窗口或在新的标签页中打开链接。 ### 5. window.close() `window.close()`方法用于关闭当前窗口。需要注意...

    Popup window ActionScript3 VS ActionScript2

    Popup Window在ActionScript 3(AS3)与ActionScript 2(AS2)中的实现方式有所不同,这两者都是Adobe Flash开发中的脚本语言,用于创建交互式内容和动画。这篇博文探讨了这两种语言在创建弹出窗口时的技术差异。 ...

    bottom_popup_window

    在Android应用开发中,"bottom_popup_window"是一个常见的设计元素,用于展示临时的通知或功能选项。这个标题描述了一个简单易用的底部弹窗效果,它从屏幕底部滑入,用户可以通过点击外部区域轻松滑出,同时也支持...

    HWPopupView:IOS Popup 自定义视图,Popup View,Popup Window

    弹出式视图IOS自定义Popup view,Popup Window============ 用法 //custom viewBBJShareAlertView * shareAlertView = [BBJShareAlertView initWithTitle:@"aa" andReferView:nil]; //Popup custom viewself....

    关于popup的使用

    在JavaScript中,最简单的popup实现是使用`window.open()`函数创建新窗口。这个函数接受一个URL和一个窗口名称作为参数,可以用来打开一个新的浏览器窗口或标签页。例如: ```javascript var popup = window.open('...

    一个基于ASP.NET实现的Masked Div Or Modal Popup Window程序源码例子

    在本源码例子中,“基于ASP.NET实现的Masked Div Or Modal Popup Window”是一个功能,它允许在网页上创建遮罩层弹出窗口,通常用于显示警告、确认对话框或者加载内容时提供一种半透明的覆盖层,以防止用户在处理...

    jquery自定义弹出窗口

    本文将详细讲解如何使用jQuery实现自定义弹出窗口,以替代原生的`window.open`方法,并且能返回参数,增强用户体验。 ### 1. jQuery弹出窗口基础 jQuery自定义弹出窗口的核心是通过CSS和JavaScript来创建一个新的...

    Android自定义下拉框(PopupWindow实现)

    在Android开发中,有时我们... - 首先,我们需要为下拉框创建一个布局文件,例如`popup_window.xml`。这个布局将包含下拉框中的所有元素,比如ListView或RecyclerView来显示选项。 ```xml <!-- popup_window.xml --> ...

    C# .NET弹出窗口 汇总

    this.Response.Write("<script>window.open('popup.aspx');</script>"); } else { // 已经显示过弹出窗口 } ``` 这里首先检查是否存在名为`popup`的Cookie,如果不存在,则弹出`popup.aspx`窗口。 ### 总结 通过...

    web弹出div大小拉伸

    popup.style.left = (window.innerWidth - bounds.width) + 'px'; } if (bounds.top ) { popup.style.top = 0 + 'px'; } if (bounds.bottom > window.innerHeight) { popup.style.top = (window.innerHeight ...

    Yc_ui_popup_window源码

    在Android开发中,`Yc_ui_popup_window`是一个常见的自定义弹窗库,它提供了丰富的弹窗样式和功能,使得开发者能够更加灵活地定制属于自己的弹窗组件。这个开源项目通常包含一系列源码文件,例如布局文件、Java或...

    C#自定义控件--Popup窗口提醒完整源码_《0528》.rar

    这个“C#自定义控件--Popup窗口提醒完整源码_《0528》”的压缩包文件显然是一个关于如何在C#中创建自定义Popup窗口提醒的实例。Popup窗口在许多应用中都很常见,如提示信息、警告或确认对话框,它能够快速吸引用户的...

Global site tag (gtag.js) - Google Analytics