zsh_root
2025-12-10 8d662de2fd262b3a485f16e197cb4d0ca2a61cdf
src/PublicPannel/BaseParameterPanel.java
@@ -23,14 +23,14 @@
    private void initializeUI() {
        setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
        
        // 创建主内容面板
        // 创建主内容面板
        JPanel contentPanel = new JPanel();
        contentPanel.setLayout(new BoxLayout(contentPanel, BoxLayout.Y_AXIS));
        
        // 添加顶部间距 - 这是关键修改
        // 添加顶部间距 - 这是关键修改
        contentPanel.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
        
        // 参数配置
        // 参数配置
        String[][] parameters = {
            {"02.", "device.version"},
            {"04.", "device.id"},
@@ -54,7 +54,7 @@
            addParameterField(contentPanel, parameters[i][0], parameters[i][1], i);
        }
        
        // 添加内容面板到主面板,不添加额外间距
        // 添加内容面板到主面板,不添加额外间距
        add(contentPanel);
    }
    
@@ -67,24 +67,24 @@
        textFields[index] = new JTextField();
        textFields[index].setPreferredSize(new Dimension(120, 25));
        
        // 如果是设备版本(地址为02.),设置为不可编辑
        // 如果是设备版本(地址为02.),设置为不可编辑
        if ("02.".equals(address)) {
            textFields[index].setEditable(false);
            // 可选:设置背景色以表示不可编辑状态
            // 可选:设置背景色以表示不可编辑状态
            textFields[index].setBackground(Color.LIGHT_GRAY);
        }
        
        paramPanel.add(labels[index]);
        paramPanel.add(textFields[index]);
        
        // 设置高度
        // 设置高度
        paramPanel.setMaximumSize(new Dimension(Integer.MAX_VALUE, 35));
        panel.add(paramPanel);
    }
    
    /**
     * 更新字段值 - 新增方法
     * @param result 解析结果对象
     * 更新字段值 - 新增方法
     * @param result 解析结果对象
     */
    public void updateFields(DellTag55AA03.ParseResult result) {
        if (result == null) {
@@ -92,70 +92,70 @@
            return;
        }
               
        // 根据参数顺序更新对应的文本框
        // 根据参数顺序更新对应的文本框
        try {
            if (textFields.length > 0 && result.dizhi0x2 != null) {
                textFields[0].setText(result.dizhi0x2); // 设备版本
                textFields[0].setText(result.dizhi0x2); // 设备版本
                
            }
            
            if (textFields.length > 1 && result.dizhi0x4 != null) {
                textFields[1].setText(result.dizhi0x4); // 设备ID
                textFields[1].setText(result.dizhi0x4); // 设备ID
               
            }
            
            if (textFields.length > 2 && result.dizhi0x6 != null) {
                textFields[2].setText(String.valueOf(result.dizhi0x6)); // 通信频率
                textFields[2].setText(String.valueOf(result.dizhi0x6)); // 通信频率
               
            }
            
            if (textFields.length > 3 && result.dizhi0x8 != null) {
                textFields[3].setText(String.valueOf(result.dizhi0x8)); // 每次通信基站数
                textFields[3].setText(String.valueOf(result.dizhi0x8)); // 每次通信基站数
                
            }
            
            if (textFields.length > 4 && result.dizhi0xA != null) {
                textFields[4].setText(String.valueOf(result.dizhi0xA)); // 小组编号
                textFields[4].setText(String.valueOf(result.dizhi0xA)); // 小组编号
                
            }
            
            if (textFields.length > 5) {
                textFields[5].setText(String.valueOf(result.dizhi0xC)); // 距离校准
                textFields[5].setText(String.valueOf(result.dizhi0xC)); // 距离校准
               
            }
            
            if (textFields.length > 6 && result.dizhi0xE != null) {
                textFields[6].setText(String.valueOf(result.dizhi0xE)); // 设备类型
                textFields[6].setText(String.valueOf(result.dizhi0xE)); // 设备类型
               
            }
            
            if (textFields.length > 7 && result.dizhi0x10 != null) {
                textFields[7].setText(String.valueOf(result.dizhi0x10)); // 基站主动测距
                textFields[7].setText(String.valueOf(result.dizhi0x10)); // 基站主动测距
                
            }
            
            if (textFields.length > 8 && result.dizhi0x12 != null) {
                textFields[8].setText(String.valueOf(result.dizhi0x12)); // 报警设备
                textFields[8].setText(String.valueOf(result.dizhi0x12)); // 报警设备
                
            }
            
            if (textFields.length > 9 && result.dizhi0x1A != null) {
                textFields[9].setText(String.valueOf(result.dizhi0x1A)); // 配对ID
                textFields[9].setText(String.valueOf(result.dizhi0x1A)); // 配对ID
               
            }
            
            if (textFields.length > 10 && result.dizhi0x1C != null) {
                textFields[10].setText(String.valueOf(result.dizhi0x1C)); // 心跳包/UWB开关状态
                textFields[10].setText(String.valueOf(result.dizhi0x1C)); // 心跳包/UWB开关状态
                
            }
            
            if (textFields.length > 11 && result.dizhi0x1E != null) {
                textFields[11].setText(String.valueOf(result.dizhi0x1E)); // MODBUSģʽ
                textFields[11].setText(String.valueOf(result.dizhi0x1E)); // MODBUS模式
               
            }
            
            if (textFields.length > 12 && result.dizhi0x36 != null) {
                textFields[12].setText(String.valueOf(result.dizhi0x36)); // 功率
                textFields[12].setText(String.valueOf(result.dizhi0x36)); // 功率
                
            }
            
@@ -164,13 +164,13 @@
            e.printStackTrace();
        }
        
        // 重新验证和重绘面板
        // 重新验证和重绘面板
        revalidate();
        repaint();
    }
    
    public void updateLanguage() {
        // 更新标签文本
        // 更新标签文本
        String[][] parameters = {
            {"02.", "device.version"},
            {"04.", "device.id"},
@@ -195,7 +195,7 @@
        repaint();
    }
    
    // 新增:获取文本框数组的方法
    // 新增:获取文本框数组的方法
    public JTextField[] getTextFields() {
        return textFields;
    }
@@ -203,44 +203,44 @@
    
    public String getdizhi0x2() {
      return textFields.length ==1 ? textFields[0].getText() : "";
    }//版本号
    }//版本号
    public String getdizhi0x4() {
      return textFields.length > 1 ? textFields[1].getText() : "";
    }//模块编号
    }//模块编号
    public String getdizhi0x6() {
      return textFields.length > 2 ? textFields[2].getText() : "";
    }//通信频率
    }//通信频率
    public String getdizhi0x8() {
      return textFields.length > 3 ? textFields[3].getText() : "";
    }//最多通信基站
    }//最多通信基站
    public String getdizhi0xA() {
      return textFields.length > 4 ? textFields[4].getText() : "";
    }//最少通信基站、小组编号
    }//最少通信基站、小组编号
    public String  getdizhi0xC() {
      return textFields.length > 5 ? textFields[5].getText() : "";
    }//校准距离
    }//校准距离
    public String getdizhi0xE() {
      return textFields.length > 6 ? textFields[6].getText() : "";
    }//模块类型
    }//模块类型
    public String getdizhi0x10() {
      return textFields.length > 7 ? textFields[7].getText() : "";
    }//基站主动测距
    }//基站主动测距
    public String getdizhi0x12() {
      return textFields.length > 8 ? textFields[8].getText() : "";
    }//报警设备
    }//报警设备
    
    public String getdizhi0x1A() {
      return textFields.length > 9 ? textFields[9].getText() : "";
    }//配对ID
    }//配对ID
    public String getdizhi0x1C() {
      return textFields.length > 10 ? textFields[10].getText() : "";
    }//心跳包、UWB开关状态
    }//心跳包、UWB开关状态
    public String getdizhi0x1E() {
      return textFields.length > 11 ? textFields[11].getText() : "";
    }//MODBUSģʽ
    }//MODBUS模式
    public String getdizhi0x36() {
      return textFields.length > 12 ? textFields[12].getText() : "";
    }//功率
    }//功率
    
    
}