• swing更改组件(删除后添加)得到心得:起码得刷新一下啊,可能还得再考虑重绘


    swing更改组件(删除后添加)得到心得:起码得刷新一下啊,可能还得再考虑重绘

    心得:修改无效时,考虑一下刷新宝贝,或再试试像界面层次的东西,再考虑重新绘制一下啊大宝贝

    代码举例:

    更换头像代码举例:(不刷新,不重新绘制,效果出不来,要么图片不变,要么反正就是不合心意):

    ps:自己定义的几个变量的意思:pnlHeaderImage 是头像面板

    headerPath 是 头像路径,方法openLocalFilePath(); 是打开文件夹或者文件,挑选自己喜欢的头像的图片文件路径

    ps:刷新代码语句:pnlHeaderImage.updateUI();

      重绘代码语句:pnlHeaderImage.repaint();             

        /**
         * 头像添加点击事件更换头像的方法
         */
        private void headImageEvent() {
            pnlHeaderImage.addMouseListener(new MouseAdapter() {
                public void mouseClicked(MouseEvent e) {
                    if (e.getButton() == MouseEvent.BUTTON1) { // 点击鼠标左键
                        pnlHeaderImage.removeAll();
                        pnlHeaderImage.setOpaque(true);
                        pnlHeaderImage.repaint();
    //                    pnlHeaderImage.updateUI();
                    }
                    headerPath = openLocalFilePath();
                    lblHeaderImage = new JLabel(new ImageIcon(headerPath));
                    pnlHeaderImage.add(lblHeaderImage);
                    pnlHeaderImage.setOpaque(false);
                    pnlHeaderImage.updateUI();
                }
                
            });    
        }

    ps:方法openLocalFilePath(); 是打开文件夹或者文件,挑选自己喜欢的头像的图片文件路径的代码:

        /**
         * 打开文件夹的路径
         * @return
         */
        public String openLocalFilePath() {
            JFileChooser fileChooser = new JFileChooser(".");
            fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
            int value = fileChooser.showDialog(fileChooser, "选择");
            File getPath = null;
             if (value == JFileChooser.APPROVE_OPTION) {
                    getPath = fileChooser.getSelectedFile();
             }
            return getPath.getAbsolutePath();
        }
  • 相关阅读:
    EVIOCGNAME:Get Device Name
    Andriod Sensor HAL 分析
    通知内核你的设备 不支持llseek, 通过在你的 open 方法中调用nonseekable_open
    linux Gsensor驱动(bma250为例子)
    Linux输入子系统:输入设备编程指南 -- input-programming.txt
    Android UEventObserver 使用
    android switch模块
    linux里的驱动接口
    input subsystem 函数解释
    2.6 内核中的计时器 小结
  • 原文地址:https://www.cnblogs.com/shan333/p/14835800.html
Copyright © 2020-2023  润新知