Files
NonWovenFabric/WindowsFormsApp6/实现总结.md
GukSang.Jin f00d3dd4dd '初始化'
2025-12-31 09:43:35 +08:00

4.8 KiB
Raw Blame History

液体吸收测试报告表格实现总结

已完成的功能

1. 表格结构设计

  • 列结构1个序号列 + 5个试样每个试样3列= 16列

    • 序号列:显示行名称
    • 每个试样包含:
      • 系统读数(黄色背景,只读)
      • 手动输入(白色背景,可编辑)
      • 系统计算(黄色背景,只读)
  • 行结构6行数据

    1. 吸水时间s- 从寄存器读取
    2. 吸芯高度mm- 手动输入
    3. 芯吸速率mm/min- 自动计算
    4. 平均芯吸速率mm/min- 自动计算
    5. 标准偏差 - 自动计算
    6. 互检/审核 - 预留填充

2. 数据处理功能

数据读取

  • 吸水时间s:通过 ReadRegisterData() 方法从寄存器读取
  • 定时器每秒自动更新一次数据
  • 支持5个试样同时读取

手动输入

  • 吸芯高度mm:用户可在"手动输入"列直接编辑
  • 编辑后自动触发重新计算

自动计算

// 芯吸速率计算公式
芯吸速率 = 吸芯高度(mm / (吸水时间(s / 60)

// 平均芯吸速率
平均芯吸速率 = Average(所有试样的芯吸速率)

// 标准偏差
标准偏差 = StdDev(所有试样的芯吸速率)

3. 界面功能

按钮功能

  • 连接设备:启动/停止从寄存器读取数据
  • 模拟数据:生成测试数据用于演示
  • 导出导出数据到Excel文件
  • 打印:预留功能
  • 返回:关闭窗口

样式设置

  • 黄色背景:系统自动填充的数据(只读)
  • 白色背景:可手动输入的数据(可编辑)
  • 居中对齐:所有单元格内容
  • 数值格式保留2位小数

4. Excel导出功能

表头结构

  • 第一行试样1-5每个试样合并3列
  • 第二行:系统读数、手动输入、系统计算
  • 序号列:合并两行

样式保持

  • 黄色背景:系统读数和系统计算列
  • 白色背景:手动输入列
  • 边框:所有单元格
  • 居中对齐:所有内容

5. 数据验证

计算逻辑

  • 优先使用系统读数(吸水时间)
  • 优先使用手动输入(吸芯高度)
  • 自动过滤无效数据值为0的数据
  • 实时更新计算结果

代码结构

主要方法

// 初始化
InitializeDataTable()        // 初始化数据表结构
InitializeDataGridView()     // 初始化表格列
InitializeTimer()            // 初始化定时器
InitializeEventHandlers()    // 初始化事件处理

// 数据处理
ReadRegisterData()           // 从寄存器读取数据
GenerateMockData()           // 生成模拟数据
CalculateAllRows()           // 计算所有行数据
CalculateWickingRate()       // 计算芯吸速率
CalculateAverageWickingRate() // 计算平均芯吸速率
CalculateStandardDeviation() // 计算标准偏差

// 界面更新
UpdateDisplay()              // 更新界面显示
RecalculateRow()             // 重新计算指定行

// 导出功能
ExportToExcel()              // 导出到Excel
GenerateReport()             // 生成报表

事件处理

DataTimer_Tick()                    // 定时器事件
DataGridView1_CellValueChanged()    // 单元格值改变事件
DataGridView1_CellFormatting()      // 单元格格式化事件
Button1_Click()                     // 连接设备按钮
Button5_Click()                     // 模拟数据按钮
Button3_Click()                     // 导出按钮

使用流程

  1. 启动程序

    • 自动初始化表格结构
    • 显示6行数据行
  2. 连接设备

    • 点击"连接设备"按钮
    • 开始从寄存器读取吸水时间数据
    • 数据显示在"系统读数"列(黄色背景)
  3. 输入数据

    • 在"吸芯高度"行的"手动输入"列输入测量值
    • 系统自动计算芯吸速率
  4. 查看结果

    • 芯吸速率自动显示在"系统计算"列
    • 平均芯吸速率和标准偏差自动计算
  5. 导出数据

    • 点击"导出"按钮
    • 选择保存位置
    • 生成Excel文件

测试功能

模拟数据生成

  • 点击"模拟数据"按钮
  • 自动生成:
    • 吸水时间30-34秒之间的随机值
    • 吸芯高度50-70mm之间的随机值
    • 自动计算其他数据

注意事项

  1. 数据精度所有数值保留2位小数
  2. 计算顺序:先计算芯吸速率,再计算平均值和标准偏差
  3. 数据验证自动过滤无效数据值为0
  4. 实时更新:修改手动输入列后立即重新计算
  5. Excel格式导出的Excel文件保持与界面相同的格式

扩展功能建议

  1. 数据保存:添加数据库存储功能
  2. 历史记录:查看历史测试记录
  3. 打印功能:完善打印报表功能
  4. 数据校验:添加数据范围校验
  5. 多语言支持:支持中英文切换
  6. 图表显示:添加数据可视化图表