`
healthandbeauty
  • 浏览: 168102 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

swing富客户端的专家们来看看Jbutton没有被盖住 这是咋回事?

    博客分类:
  • java
阅读更多

当我在点击第一个“张三”按钮时弹出一个Jdialog后,让Jdialog下面的所有组件锁定,呈现出半透明状态,但是有一个问题是点击的这个“张三”按钮呈现出发亮状态,没有被半透明层覆盖住,其他的Jbutton覆盖住了。

我的Jbutton按钮都在Jpanel上面放着。
希望swing专家们给点意见。这种原因是怎么遭成的。


图片见附件! 提前谢谢同志们了。

“张三按钮”所在的Jpanel 代码如下:
public class PhoneTeamPanel extends javax.swing.JPanel {
    //背景图片

    public String img;
    //背景图片的x坐标
    int x;
    //背景图片的y坐标
    int y;
    AddressDialog dialog ;
    /** Creates new form PhoneTeamPanel */
    public PhoneTeamPanel(final JFrame frame,String img, int x, int y) {
        this.img = img;
        this.x = x;
        this.y = y;
        initComponents();
       
        
        //设置电话分组用户姓名
         setPhoneGroupPeopleName(peopleName,"张三");
        dialog = new AddressDialog(frame, true);
         
        peopleName.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent ae) {
            //frame set
            
             ((JPanel)frame.getContentPane()).setBackground(new Color(231, 231,231, 130));
             ((JPanel)frame.getContentPane()).setOpaque(true);
             ((JPanel)frame.getContentPane()).repaint();

             ((JPanel)dialog.getContentPane()).setOpaque(false);
            ImageIcon imgIc = new ImageIcon(ImagesPath.NUMBERFUCTION_BG);
            JLabel backLabel = new JLabel(imgIc);
            backLabel.setBounds(0,0, imgIc.getIconWidth(), imgIc.getIconHeight());
            dialog.setBounds(240, 230,imgIc.getIconWidth(), imgIc.getIconHeight());
            dialog.getLayeredPane().add(backLabel,new Integer(Integer.MIN_VALUE));
            dialog.setUndecorated(true);
            dialog.setVisible(true);
         }
       });
       
//       dialog.setDefaultLookAndFeelDecorated(true);
    }
    //JButton的标题
    JLabel buttonLabel;

        /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        peopleName = new javax.swing.JButton();
               
        setBackground(new java.awt.Color(255, 255, 255));
        setOpaque(false);
        setPreferredSize(new java.awt.Dimension(600, 310));
        setRequestFocusEnabled(false);

              
        peopleName.setIcon(new javax.swing.ImageIcon(getClass().getResource("/images/phoneGroup_peopleNameB.png"))); // NOI18N
        peopleName.setBorderPainted(false);
        peopleName.setFocusPainted(false);
        peopleName.setPreferredSize(new java.awt.Dimension(85, 39));

       
       
    }// </editor-fold>                        

    // Variables declaration - do not modify                     

    private javax.swing.JButton peopleName;
          

    /*
     *绘制Panel背景
     */
    public void paintComponent(Graphics g) {
        ImageIcon imgbg = new ImageIcon(img);
        g.drawImage(imgbg.getImage(), x, y, null);
    }

}



Jframe 构造器中 PhoneTeamPanel 类的代码:
PhoneTeamPanel  ptp = new PhoneTeamPanel(this,ImagesPath.PHONEGROUP_BG, 3,13);
        ptp.setBounds(3, 15, frameWidth, frameHeight);
        this.getLayeredPane().add(ptp);


PhoneTeamPanel 类放到了Jframe的LayeredPane层上了。当点击PhoneTeamPanel上张三按钮后把
 ((JPanel)frame.getContentPane()).setBackground(new Color(231, 231,231, 130));

ContentPane层的背景设置为半透明为130的半透明效果。问题是为什么没有把张三这个Jbutton覆盖住呢?
  • 大小: 17.2 KB
0
0
分享到:
评论
5 楼 healthandbeauty 2010-01-21  
的确是焦点的问题 dialog.setFocusableWindowState(false);谢了  《大器晚成》
4 楼 大器晚成 2010-01-21  
可能是聚焦到那按钮上了 
3 楼 大器晚成 2010-01-21  
没代码没真相
2 楼 healthandbeauty 2010-01-20  
大器晚成 写道
图片看不到

若还是看不到图片。。。就麻烦大家看看附件了。
1 楼 大器晚成 2010-01-20  
图片看不到

相关推荐

    swing发邮件客户端

    Swing邮件客户端是一种基于Java Swing库开发的桌面应用程序,它允许用户发送电子邮件,类似于流行的Foxmail客户端。Swing是Java的一个图形用户界面(GUI)工具包,提供了丰富的组件和功能,使得开发者可以创建出美观且...

    Java Swing JButton按钮的实现示例

    Java Swing JButton 按钮的实现示例 Java Swing JButton 按钮是 Java 中最常用的 GUI 组件之一,用于在用户界面中提供交互方式。JButton 按钮可以根据需要自定义外观和行为,下面将对 JButton 按钮的实现示例进行...

    Swing中JTABLE中添加JBUTTON控件

    在Java的Swing库中,`JTable`是用于创建数据网格视图的重要组件,它允许用户以表格的形式查看和操作数据。而`JButton`则是一个常用的按钮控件,通常用于触发某些动作或事件。将`JButton`添加到`JTable`中可以为用户...

    Java swing 中JButton的使用

    ### Java Swing 中 JButton 的使用详解 在 Java Swing 中,`JButton` 是一个非常重要的组件,用于创建按钮。本文将详细介绍 `JButton` 的基本用法、如何设置按钮的图标、文本位置、快捷键以及如何处理按钮点击事件...

    java 在JButton上设置快捷键

    在`JButton`上设置快捷键,我们需要使用`KeyStroke`类来定义键盘组合,并将其与`Action`绑定,然后将`Action`添加到`JButton`。 以下是一步一步的实现过程: 1. **创建KeyStroke对象**:使用`KeyStroke....

    Swing + Socket + 多线程 至尊QQ 客户端安装包

    【Swing + Socket + 多线程 至尊QQ 客户端安装包】是一个集成Swing图形界面、Socket通信和多线程技术的QQ类聊天应用。Swing是Java提供的一个用于创建桌面应用程序的GUI(图形用户界面)库,它提供了丰富的组件和样式...

    SwingHacks学习笔记(2)-----自定义JLabel,JButton

    总的来说,这篇博客文章可能会详细解释如何通过扩展Swing的JLabel和JButton类,以及利用Java的事件处理机制,来实现组件的自定义功能和视觉效果。这包括但不限于改变组件的外观、添加动态效果以及实现更复杂的用户...

    Java Swing组件写的游戏客户端.zip

    在这个特定的项目中,"Java Swing组件写的游戏客户端" 暗示了一个基于Java Swing开发的游戏客户端应用,它允许用户在本地计算机上与游戏服务器交互,进行游戏体验。 1. **Swing组件基础**: - JFrame:这是Swing...

    JAVA swing (MVC)FTP客户端 (2)_javaftp客户端_familiarku3_

    在这个FTP客户端中,Swing被用来设计和构建用户界面,包括按钮、文本框、进度条等元素,使得用户可以直观地进行FTP操作。 **2. MVC(Model-View-Controller)设计模式** MVC是一种软件设计模式,常用于构建可维护和...

    swing画的一个数据库客户端

    总的来说,这个Swing数据库客户端项目是一个实用的示例,展示了Java Swing和JDBC在构建桌面应用中的应用,同时也为开发者提供了一个实践和改进的平台。对于希望提升Java GUI编程和数据库应用开发技能的人来说,这是...

    Java动画、图形和极富客户端效果-src

    Java动画、图形和极富客户端效果是Java编程中极具吸引力的一部分,它们为用户提供了丰富的交互性和视觉体验。在Java平台上,这些效果主要通过JavaFX和Swing库来实现。JavaFX是Oracle公司推出的下一代GUI框架,它提供...

    Java动画、图形和极富客户端效果开发源代码

    Java动画、图形和极富客户端效果的开发是一个深入探索Java平台高级GUI特性的主题,尤其集中在Java Swing组件库上。这些源代码文件,如frc-chapter15.zip至frc-chapter18.zip等,提供了丰富的示例,旨在帮助开发者...

    java swing客户端贪吃蛇小游戏

    【java swing客户端贪吃蛇小游戏】是一款基于Java Swing开发的经典娱乐项目,它将我们熟知的贪吃蛇游戏移植到了桌面环境中。Swing是Java提供的一个用于构建用户界面的图形库,它允许开发者创建丰富的、跨平台的应用...

    rain12306-java swing实现12306客户端 无任何服务端依赖.zip

    《rain12306-java swing实现12306客户端》是一款基于Java Swing技术开发的12306火车票预订系统,它无需依赖任何服务端组件,完全由客户端程序独立完成用户登录、余票查询及个人订单管理等功能。这款软件展示了Java ...

    像QQ的javaSwing客户端提醒软件,开机提醒

    【标题】:“像QQ的javaSwing客户端提醒软件,开机提醒” 这个项目是基于Java Swing开发的一款客户端提醒软件,设计灵感来源于腾讯QQ的信息提示功能。Java Swing是Java平台中的一个图形用户界面(GUI)工具包,它允许...

    java swing JButton 圆角按钮 鼠标监听变色(有注释简单易懂可直接运行)

    java swing JButton 圆角按钮 带变色(有注释,简单易懂适用于初学者 程序可直接运行)

    JAVA实例(swing聊天室)源代码一客户端源码

    Java Swing 聊天室客户端源码是一个典型的Java GUI应用程序示例,主要使用了Swing库来构建用户界面。Swing是Java Foundation Classes (JFC)的一部分,提供了丰富的组件库,用于创建美观、功能强大的桌面应用程序。...

    swing圆角矩形按钮

    根据给定的信息,本文将详细解释如何在Java Swing框架中创建具有圆角效果的自定义按钮。这将涉及Swing的基本概念、自定义组件的方法以及如何实现特定的视觉效果。 ### Swing简介 Swing是Java平台的一个图形用户...

    最全面的swing文本编辑器

    Swing 是 Java GUI 开发的重要库,它提供了一组组件和工具来创建桌面应用程序。"最全面的Swing文本编辑器"是一个利用Java Swing构建的高级文本编辑器,旨在提供比标准记事本更丰富的功能,如插入图片、鼠标绘图等。...

    java swing-JButton的使用

    JButton是Swing库中的一个组件,用于创建可点击的按钮。你可以使用JButton来触发操作或执行特定任务。

Global site tag (gtag.js) - Google Analytics