// A4.cpp : 实现文件 // #include "stdafx.h" #include "HuaGoCorrect.h" #include "A4.h" #include "afxdialogex.h" // CA4 对话框 IMPLEMENT_DYNAMIC(CA4, CDialog) CA4::CA4(CWnd* pParent /*=NULL*/) : CDialog(CA4::IDD, pParent) , m_tbxAGain(0) , m_tbxBGain(0) , m_tbxAOffset(0) , m_tbxBOffset(0) { m_iLastIndex = 0; m_iSelIndex = 0; m_tbxFRExposure = 0; m_tbxFGExposure = 0; m_tbxFBExposure = 0; m_tbxF1Gain = 0; m_tbxF2Gain = 0; m_tbxF3Gain = 0; m_tbxF4Gain = 0; m_tbxF5Gain = 0; m_tbxF6Gain = 0; m_tbxF1Offset = 0; m_tbxF2Offset = 0; m_tbxF3Offset = 0; m_tbxF4Offset = 0; m_tbxF5Offset = 0; m_tbxF6Offset = 0; m_tbxBRExposure = 0; m_tbxBGExposure = 0; m_tbxBBExposure = 0; m_tbxB1Gain = 0; m_tbxB2Gain = 0; m_tbxB3Gain = 0; m_tbxB4Gain = 0; m_tbxB5Gain = 0; m_tbxB6Gain = 0; m_tbxB1Offset = 0; m_tbxB2Offset = 0; m_tbxB3Offset = 0; m_tbxB4Offset = 0; m_tbxB5Offset = 0; m_tbxB6Offset = 0; } CA4::~CA4() { } void CA4::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Text(pDX, IDC_tbxFRExposure, m_tbxFRExposure); DDX_Text(pDX, IDC_tbxFGExposure, m_tbxFGExposure); DDX_Text(pDX, IDC_tbxFBExposure, m_tbxFBExposure); DDX_Text(pDX, IDC_tbxF1Gain, m_tbxF1Gain); DDX_Text(pDX, IDC_tbxF2Gain, m_tbxF2Gain); DDX_Text(pDX, IDC_tbxF3Gain, m_tbxF3Gain); DDX_Text(pDX, IDC_tbxF4Gain, m_tbxF4Gain); DDX_Text(pDX, IDC_tbxF5Gain, m_tbxF5Gain); DDX_Text(pDX, IDC_tbxF6Gain, m_tbxF6Gain); DDX_Text(pDX, IDC_tbxF1Offset, m_tbxF1Offset); DDX_Text(pDX, IDC_tbxF2Offset, m_tbxF2Offset); DDX_Text(pDX, IDC_tbxF3Offset, m_tbxF3Offset); DDX_Text(pDX, IDC_tbxF4Offset, m_tbxF4Offset); DDX_Text(pDX, IDC_tbxF5Offset, m_tbxF5Offset); DDX_Text(pDX, IDC_tbxF6Offset, m_tbxF6Offset); DDX_Text(pDX, IDC_tbxBRExposure, m_tbxBRExposure); DDX_Text(pDX, IDC_tbxBGExposure, m_tbxBGExposure); DDX_Text(pDX, IDC_tbxBBExposure, m_tbxBBExposure); DDX_Text(pDX, IDC_tbxB1Gain, m_tbxB1Gain); DDX_Text(pDX, IDC_tbxB2Gain, m_tbxB2Gain); DDX_Text(pDX, IDC_tbxB3Gain, m_tbxB3Gain); DDX_Text(pDX, IDC_tbxB4Gain, m_tbxB4Gain); DDX_Text(pDX, IDC_tbxB5Gain, m_tbxB5Gain); DDX_Text(pDX, IDC_tbxB6Gain, m_tbxB6Gain); DDX_Text(pDX, IDC_tbxB1Offset, m_tbxB1Offset); DDX_Text(pDX, IDC_tbxB2Offset, m_tbxB2Offset); DDX_Text(pDX, IDC_tbxB3Offset, m_tbxB3Offset); DDX_Text(pDX, IDC_tbxB4Offset, m_tbxB4Offset); DDX_Text(pDX, IDC_tbxB5Offset, m_tbxB5Offset); DDX_Text(pDX, IDC_tbxB6Offset, m_tbxB6Offset); DDX_Control(pDX, IDC_CMB_A4FlatModel, m_A4FlatModel); DDX_Text(pDX, IDC_EDIT_AGAIN, m_tbxAGain); DDV_MinMaxUInt(pDX, m_tbxAGain, 0, 1000); DDX_Text(pDX, IDC_EDIT_BGAIN, m_tbxBGain); DDV_MinMaxUInt(pDX, m_tbxBGain, 0, 1000); DDX_Text(pDX, IDC_EDIT_AOFFSET, m_tbxAOffset); DDV_MinMaxUInt(pDX, m_tbxAOffset, 0, 1000); DDX_Text(pDX, IDC_EDIT_BOFFSET, m_tbxBOffset); DDV_MinMaxUInt(pDX, m_tbxBOffset, 0, 1000); } BEGIN_MESSAGE_MAP(CA4, CDialog) ON_CBN_SELCHANGE(IDC_CMB_A4FlatModel, &CA4::OnCbnSelChangeA4FlatModel) ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN_AGAIN, &CA4::OnDeltaposSpinAgain) ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN_AOFFSET, &CA4::OnDeltaposSpinAoffset) ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN_BGAIN, &CA4::OnDeltaposSpinBgain) ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN_BOFFSET, &CA4::OnDeltaposSpinBoffset) END_MESSAGE_MAP() // CA4 消息处理程序 BOOL CA4::OnInitDialog() { CDialog::OnInitDialog(); // TODO: 在此添加额外的初始化 LoadCfg(); m_A4FlatModel.InsertString(0, _T("彩色校正模式")); m_A4FlatModel.InsertString(1, _T("彩色")); m_A4FlatModel.InsertString(2, _T("灰度校正模式")); m_A4FlatModel.InsertString(3, _T("灰度")); m_A4FlatModel.SetCurSel(0); //GetDlgItem(IDC_CMB_A4FlatModel)->EnableWindow(FALSE); default0param(); return TRUE; // return TRUE unless you set the focus to a control // 异常: OCX 属性页应返回 FALSE } void CA4::OnCbnSelChangeA4FlatModel() { // TODO: 在此添加控件通知处理程序代码 //int nSel; // 获取组合框控件的列表框中选中项的索引 m_iSelIndex = m_A4FlatModel.GetCurSel(); if(m_iLastIndex != m_iSelIndex) { SaveNewParam(m_iLastIndex); m_iLastIndex = m_iSelIndex; } switch (m_iSelIndex) { case 0: default0param(); break; case 1: default1param(); break; case 2: default2param(); break; case 3: default3param(); break; default: break; } } void CA4::default0param() { UpdateData(TRUE); m_tbxFRExposure = m_sFlatCorrection.ColorCorrection[0]; m_tbxFGExposure = m_sFlatCorrection.ColorCorrection[1]; m_tbxFBExposure = m_sFlatCorrection.ColorCorrection[2]; m_tbxF1Gain = m_sFlatCorrection.ColorCorrection[3]; m_tbxF2Gain = m_sFlatCorrection.ColorCorrection[4]; m_tbxF3Gain = m_sFlatCorrection.ColorCorrection[5]; m_tbxF4Gain = m_sFlatCorrection.ColorCorrection[6]; m_tbxF5Gain = m_sFlatCorrection.ColorCorrection[7]; m_tbxF6Gain = m_sFlatCorrection.ColorCorrection[8]; m_tbxF1Offset = m_sFlatCorrection.ColorCorrection[9]; m_tbxF2Offset = m_sFlatCorrection.ColorCorrection[10]; m_tbxF3Offset = m_sFlatCorrection.ColorCorrection[11]; m_tbxF4Offset = m_sFlatCorrection.ColorCorrection[12]; m_tbxF5Offset = m_sFlatCorrection.ColorCorrection[13]; m_tbxF6Offset = m_sFlatCorrection.ColorCorrection[14]; m_tbxBRExposure = m_sFlatCorrection.ColorCorrection[15]; m_tbxBGExposure = m_sFlatCorrection.ColorCorrection[16]; m_tbxBBExposure = m_sFlatCorrection.ColorCorrection[17]; m_tbxB1Gain = m_sFlatCorrection.ColorCorrection[18]; m_tbxB2Gain = m_sFlatCorrection.ColorCorrection[19]; m_tbxB3Gain = m_sFlatCorrection.ColorCorrection[20]; m_tbxB4Gain = m_sFlatCorrection.ColorCorrection[21]; m_tbxB5Gain = m_sFlatCorrection.ColorCorrection[22]; m_tbxB6Gain = m_sFlatCorrection.ColorCorrection[23]; m_tbxB1Offset = m_sFlatCorrection.ColorCorrection[24]; m_tbxB2Offset = m_sFlatCorrection.ColorCorrection[25]; m_tbxB3Offset = m_sFlatCorrection.ColorCorrection[26]; m_tbxB4Offset = m_sFlatCorrection.ColorCorrection[27]; m_tbxB5Offset = m_sFlatCorrection.ColorCorrection[28]; m_tbxB6Offset = m_sFlatCorrection.ColorCorrection[29]; UpdateData(FALSE); } void CA4::default1param() { UpdateData(TRUE); m_tbxFRExposure = m_sFlatCorrection.ColorFlat[0]; m_tbxFGExposure = m_sFlatCorrection.ColorFlat[1]; m_tbxFBExposure = m_sFlatCorrection.ColorFlat[2]; m_tbxF1Gain = m_sFlatCorrection.ColorFlat[3]; m_tbxF2Gain = m_sFlatCorrection.ColorFlat[4]; m_tbxF3Gain = m_sFlatCorrection.ColorFlat[5]; m_tbxF4Gain = m_sFlatCorrection.ColorFlat[6]; m_tbxF5Gain = m_sFlatCorrection.ColorFlat[7]; m_tbxF6Gain = m_sFlatCorrection.ColorFlat[8]; m_tbxF1Offset = m_sFlatCorrection.ColorFlat[9]; m_tbxF2Offset = m_sFlatCorrection.ColorFlat[10]; m_tbxF3Offset = m_sFlatCorrection.ColorFlat[11]; m_tbxF4Offset = m_sFlatCorrection.ColorFlat[12]; m_tbxF5Offset = m_sFlatCorrection.ColorFlat[13]; m_tbxF6Offset = m_sFlatCorrection.ColorFlat[14]; m_tbxBRExposure = m_sFlatCorrection.ColorFlat[15]; m_tbxBGExposure = m_sFlatCorrection.ColorFlat[16]; m_tbxBBExposure = m_sFlatCorrection.ColorFlat[17]; m_tbxB1Gain = m_sFlatCorrection.ColorFlat[18]; m_tbxB2Gain = m_sFlatCorrection.ColorFlat[19]; m_tbxB3Gain = m_sFlatCorrection.ColorFlat[20]; m_tbxB4Gain = m_sFlatCorrection.ColorFlat[21]; m_tbxB5Gain = m_sFlatCorrection.ColorFlat[22]; m_tbxB6Gain = m_sFlatCorrection.ColorFlat[23]; m_tbxB1Offset = m_sFlatCorrection.ColorFlat[24]; m_tbxB2Offset = m_sFlatCorrection.ColorFlat[25]; m_tbxB3Offset = m_sFlatCorrection.ColorFlat[26]; m_tbxB4Offset = m_sFlatCorrection.ColorFlat[27]; m_tbxB5Offset = m_sFlatCorrection.ColorFlat[28]; m_tbxB6Offset = m_sFlatCorrection.ColorFlat[29]; UpdateData(FALSE); } void CA4::default2param() { UpdateData(TRUE); m_tbxFRExposure = m_sFlatCorrection.GrayCorrection[0]; m_tbxFGExposure = m_sFlatCorrection.GrayCorrection[1]; m_tbxFBExposure = m_sFlatCorrection.GrayCorrection[2]; m_tbxF1Gain = m_sFlatCorrection.GrayCorrection[3]; m_tbxF2Gain = m_sFlatCorrection.GrayCorrection[4]; m_tbxF3Gain = m_sFlatCorrection.GrayCorrection[5]; m_tbxF4Gain = m_sFlatCorrection.GrayCorrection[6]; m_tbxF5Gain = m_sFlatCorrection.GrayCorrection[7]; m_tbxF6Gain = m_sFlatCorrection.GrayCorrection[8]; m_tbxF1Offset = m_sFlatCorrection.GrayCorrection[9]; m_tbxF2Offset = m_sFlatCorrection.GrayCorrection[10]; m_tbxF3Offset = m_sFlatCorrection.GrayCorrection[11]; m_tbxF4Offset = m_sFlatCorrection.GrayCorrection[12]; m_tbxF5Offset = m_sFlatCorrection.GrayCorrection[13]; m_tbxF6Offset = m_sFlatCorrection.GrayCorrection[14]; m_tbxBRExposure = m_sFlatCorrection.GrayCorrection[15]; m_tbxBGExposure = m_sFlatCorrection.GrayCorrection[16]; m_tbxBBExposure = m_sFlatCorrection.GrayCorrection[17]; m_tbxB1Gain = m_sFlatCorrection.GrayCorrection[18]; m_tbxB2Gain = m_sFlatCorrection.GrayCorrection[19]; m_tbxB3Gain = m_sFlatCorrection.GrayCorrection[20]; m_tbxB4Gain = m_sFlatCorrection.GrayCorrection[21]; m_tbxB5Gain = m_sFlatCorrection.GrayCorrection[22]; m_tbxB6Gain = m_sFlatCorrection.GrayCorrection[23]; m_tbxB1Offset = m_sFlatCorrection.GrayCorrection[24]; m_tbxB2Offset = m_sFlatCorrection.GrayCorrection[25]; m_tbxB3Offset = m_sFlatCorrection.GrayCorrection[26]; m_tbxB4Offset = m_sFlatCorrection.GrayCorrection[27]; m_tbxB5Offset = m_sFlatCorrection.GrayCorrection[28]; m_tbxB6Offset = m_sFlatCorrection.GrayCorrection[29]; UpdateData(FALSE); } void CA4::default3param() { UpdateData(TRUE); m_tbxFRExposure = m_sFlatCorrection.GrayFlat[0]; m_tbxFGExposure = m_sFlatCorrection.GrayFlat[1]; m_tbxFBExposure = m_sFlatCorrection.GrayFlat[2]; m_tbxF1Gain = m_sFlatCorrection.GrayFlat[3]; m_tbxF2Gain = m_sFlatCorrection.GrayFlat[4]; m_tbxF3Gain = m_sFlatCorrection.GrayFlat[5]; m_tbxF4Gain = m_sFlatCorrection.GrayFlat[6]; m_tbxF5Gain = m_sFlatCorrection.GrayFlat[7]; m_tbxF6Gain = m_sFlatCorrection.GrayFlat[8]; m_tbxF1Offset = m_sFlatCorrection.GrayFlat[9]; m_tbxF2Offset = m_sFlatCorrection.GrayFlat[10]; m_tbxF3Offset = m_sFlatCorrection.GrayFlat[11]; m_tbxF4Offset = m_sFlatCorrection.GrayFlat[12]; m_tbxF5Offset = m_sFlatCorrection.GrayFlat[13]; m_tbxF6Offset = m_sFlatCorrection.GrayFlat[14]; m_tbxBRExposure = m_sFlatCorrection.GrayFlat[15]; m_tbxBGExposure = m_sFlatCorrection.GrayFlat[16]; m_tbxBBExposure = m_sFlatCorrection.GrayFlat[17]; m_tbxB1Gain = m_sFlatCorrection.GrayFlat[18]; m_tbxB2Gain = m_sFlatCorrection.GrayFlat[19]; m_tbxB3Gain = m_sFlatCorrection.GrayFlat[20]; m_tbxB4Gain = m_sFlatCorrection.GrayFlat[21]; m_tbxB5Gain = m_sFlatCorrection.GrayFlat[22]; m_tbxB6Gain = m_sFlatCorrection.GrayFlat[23]; m_tbxB1Offset = m_sFlatCorrection.GrayFlat[24]; m_tbxB2Offset = m_sFlatCorrection.GrayFlat[25]; m_tbxB3Offset = m_sFlatCorrection.GrayFlat[26]; m_tbxB4Offset = m_sFlatCorrection.GrayFlat[27]; m_tbxB5Offset = m_sFlatCorrection.GrayFlat[28]; m_tbxB6Offset = m_sFlatCorrection.GrayFlat[29]; UpdateData(FALSE); } void CA4::updateA4Config(int *pValues) { UpdateData(TRUE); m_tbxFRExposure = pValues[0]; m_tbxFGExposure = pValues[1]; m_tbxFBExposure = pValues[2]; m_tbxF1Gain = pValues[6]; m_tbxF2Gain = pValues[7]; m_tbxF3Gain = pValues[8]; m_tbxF4Gain = pValues[9]; m_tbxF5Gain = pValues[10]; m_tbxF6Gain = pValues[11]; m_tbxF1Offset = pValues[18]; m_tbxF2Offset = pValues[19]; m_tbxF3Offset = pValues[20]; m_tbxF4Offset = pValues[21]; m_tbxF5Offset = pValues[22]; m_tbxF6Offset = pValues[23]; m_tbxBRExposure = pValues[3]; m_tbxBGExposure = pValues[4]; m_tbxBBExposure = pValues[5]; m_tbxB1Gain = pValues[12]; m_tbxB2Gain = pValues[13]; m_tbxB3Gain = pValues[14]; m_tbxB4Gain = pValues[15]; m_tbxB5Gain = pValues[16]; m_tbxB6Gain = pValues[17]; m_tbxB1Offset = pValues[24]; m_tbxB2Offset = pValues[25]; m_tbxB3Offset = pValues[26]; m_tbxB4Offset = pValues[27]; m_tbxB5Offset = pValues[28]; m_tbxB6Offset = pValues[29]; UpdateData(FALSE); } void CA4::LoadCfg() { UINT iColorCorrectionParam[30] = {0}; UINT iColorFlatParam[30] = {0}; UINT iGrayCorrectionParam[30] = {0}; UINT iGrayFlatParam[30] = {0}; //GetDlgItem(IDC_CMB_A4FlatModel)->EnableWindow(TRUE); iColorCorrectionParam[0] = ::GetPrivateProfileInt("ColorCorrection", "FBExposure", 340, INI_FILE_NAME); iColorCorrectionParam[1] = ::GetPrivateProfileInt("ColorCorrection", "FGExposure", 620, INI_FILE_NAME); iColorCorrectionParam[2] = ::GetPrivateProfileInt("ColorCorrection", "FRExposure", 324, INI_FILE_NAME); iColorCorrectionParam[3] = ::GetPrivateProfileInt("ColorCorrection", "F3Gain", 24, INI_FILE_NAME); iColorCorrectionParam[4] = ::GetPrivateProfileInt("ColorCorrection", "F2Gain", 24, INI_FILE_NAME); iColorCorrectionParam[5] = ::GetPrivateProfileInt("ColorCorrection", "F1Gain", 24, INI_FILE_NAME); iColorCorrectionParam[6] = ::GetPrivateProfileInt("ColorCorrection", "F6Gain", 24, INI_FILE_NAME); iColorCorrectionParam[7] = ::GetPrivateProfileInt("ColorCorrection", "F5Gain", 24, INI_FILE_NAME); iColorCorrectionParam[8] = ::GetPrivateProfileInt("ColorCorrection", "F4Gain", 24, INI_FILE_NAME); iColorCorrectionParam[9] = ::GetPrivateProfileInt("ColorCorrection", "F3Offset", 117, INI_FILE_NAME); iColorCorrectionParam[10] = ::GetPrivateProfileInt("ColorCorrection", "F2Offset", 117, INI_FILE_NAME); iColorCorrectionParam[11] = ::GetPrivateProfileInt("ColorCorrection", "F1Offset", 117, INI_FILE_NAME); iColorCorrectionParam[12] = ::GetPrivateProfileInt("ColorCorrection", "F6Offset", 117, INI_FILE_NAME); iColorCorrectionParam[13] = ::GetPrivateProfileInt("ColorCorrection", "F5Offset", 117, INI_FILE_NAME); iColorCorrectionParam[14] = ::GetPrivateProfileInt("ColorCorrection", "F4Offset", 117, INI_FILE_NAME); iColorCorrectionParam[15] = ::GetPrivateProfileInt("ColorCorrection", "BBExposure", 233, INI_FILE_NAME); iColorCorrectionParam[16] = ::GetPrivateProfileInt("ColorCorrection", "BGExposure", 418, INI_FILE_NAME); iColorCorrectionParam[17] = ::GetPrivateProfileInt("ColorCorrection", "BRExposure", 220, INI_FILE_NAME); iColorCorrectionParam[18] = ::GetPrivateProfileInt("ColorCorrection", "B3Gain", 24, INI_FILE_NAME); iColorCorrectionParam[19] = ::GetPrivateProfileInt("ColorCorrection", "B2Gain", 24, INI_FILE_NAME); iColorCorrectionParam[20] = ::GetPrivateProfileInt("ColorCorrection", "B1Gain", 24, INI_FILE_NAME); iColorCorrectionParam[21] = ::GetPrivateProfileInt("ColorCorrection", "B6Gain", 24, INI_FILE_NAME); iColorCorrectionParam[22] = ::GetPrivateProfileInt("ColorCorrection", "B5Gain", 24, INI_FILE_NAME); iColorCorrectionParam[23] = ::GetPrivateProfileInt("ColorCorrection", "B4Gain", 24, INI_FILE_NAME); iColorCorrectionParam[24] = ::GetPrivateProfileInt("ColorCorrection", "B3Offset", 64, INI_FILE_NAME); iColorCorrectionParam[25] = ::GetPrivateProfileInt("ColorCorrection", "B2Offset", 64, INI_FILE_NAME); iColorCorrectionParam[26] = ::GetPrivateProfileInt("ColorCorrection", "B1Offset", 64, INI_FILE_NAME); iColorCorrectionParam[27] = ::GetPrivateProfileInt("ColorCorrection", "B6Offset", 64, INI_FILE_NAME); iColorCorrectionParam[28] = ::GetPrivateProfileInt("ColorCorrection", "B5Offset", 64, INI_FILE_NAME); iColorCorrectionParam[29] = ::GetPrivateProfileInt("ColorCorrection", "B4Offset", 64, INI_FILE_NAME); memcpy(m_sFlatCorrection.ColorCorrection,iColorCorrectionParam,sizeof(iColorCorrectionParam)); iColorFlatParam[0] = ::GetPrivateProfileInt("ColorFlat", "FBExposure", 340, INI_FILE_NAME); iColorFlatParam[1] = ::GetPrivateProfileInt("ColorFlat", "FGExposure", 620, INI_FILE_NAME); iColorFlatParam[2] = ::GetPrivateProfileInt("ColorFlat", "FRExposure", 324, INI_FILE_NAME); iColorFlatParam[3] = ::GetPrivateProfileInt("ColorFlat", "F3Gain", 24, INI_FILE_NAME); iColorFlatParam[4] = ::GetPrivateProfileInt("ColorFlat", "F2Gain", 24, INI_FILE_NAME); iColorFlatParam[5] = ::GetPrivateProfileInt("ColorFlat", "F1Gain", 24, INI_FILE_NAME); iColorFlatParam[6] = ::GetPrivateProfileInt("ColorFlat", "F6Gain", 24, INI_FILE_NAME); iColorFlatParam[7] = ::GetPrivateProfileInt("ColorFlat", "F5Gain", 24, INI_FILE_NAME); iColorFlatParam[8] = ::GetPrivateProfileInt("ColorFlat", "F4Gain", 24, INI_FILE_NAME); iColorFlatParam[9] = ::GetPrivateProfileInt("ColorFlat", "F3Offset", 117, INI_FILE_NAME); iColorFlatParam[10] = ::GetPrivateProfileInt("ColorFlat", "F2Offset", 117, INI_FILE_NAME); iColorFlatParam[11] = ::GetPrivateProfileInt("ColorFlat", "F1Offset", 117, INI_FILE_NAME); iColorFlatParam[12] = ::GetPrivateProfileInt("ColorFlat", "F6Offset", 117, INI_FILE_NAME); iColorFlatParam[13] = ::GetPrivateProfileInt("ColorFlat", "F5Offset", 117, INI_FILE_NAME); iColorFlatParam[14] = ::GetPrivateProfileInt("ColorFlat", "F4Offset", 117, INI_FILE_NAME); iColorFlatParam[15] = ::GetPrivateProfileInt("ColorFlat", "BBExposure", 233, INI_FILE_NAME); iColorFlatParam[16] = ::GetPrivateProfileInt("ColorFlat", "BGExposure", 418, INI_FILE_NAME); iColorFlatParam[17] = ::GetPrivateProfileInt("ColorFlat", "BRExposure", 220, INI_FILE_NAME); iColorFlatParam[18] = ::GetPrivateProfileInt("ColorFlat", "B3Gain", 24, INI_FILE_NAME); iColorFlatParam[19] = ::GetPrivateProfileInt("ColorFlat", "B2Gain", 24, INI_FILE_NAME); iColorFlatParam[20] = ::GetPrivateProfileInt("ColorFlat", "B1Gain", 24, INI_FILE_NAME); iColorFlatParam[21] = ::GetPrivateProfileInt("ColorFlat", "B6Gain", 24, INI_FILE_NAME); iColorFlatParam[22] = ::GetPrivateProfileInt("ColorFlat", "B5Gain", 24, INI_FILE_NAME); iColorFlatParam[23] = ::GetPrivateProfileInt("ColorFlat", "B4Gain", 24, INI_FILE_NAME); iColorFlatParam[24] = ::GetPrivateProfileInt("ColorFlat", "B3Offset", 64, INI_FILE_NAME); iColorFlatParam[25] = ::GetPrivateProfileInt("ColorFlat", "B2Offset", 64, INI_FILE_NAME); iColorFlatParam[26] = ::GetPrivateProfileInt("ColorFlat", "B1Offset", 64, INI_FILE_NAME); iColorFlatParam[27] = ::GetPrivateProfileInt("ColorFlat", "B6Offset", 64, INI_FILE_NAME); iColorFlatParam[28] = ::GetPrivateProfileInt("ColorFlat", "B5Offset", 64, INI_FILE_NAME); iColorFlatParam[29] = ::GetPrivateProfileInt("ColorFlat", "B4Offset", 64, INI_FILE_NAME); memcpy(m_sFlatCorrection.ColorFlat,iColorFlatParam,sizeof(iColorFlatParam)); iGrayCorrectionParam[0] = ::GetPrivateProfileInt("GrayCorrection", "FBExposure", 340, INI_FILE_NAME); iGrayCorrectionParam[1] = ::GetPrivateProfileInt("GrayCorrection", "FGExposure", 620, INI_FILE_NAME); iGrayCorrectionParam[2] = ::GetPrivateProfileInt("GrayCorrection", "FRExposure", 324, INI_FILE_NAME); iGrayCorrectionParam[3] = ::GetPrivateProfileInt("GrayCorrection", "F3Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[4] = ::GetPrivateProfileInt("GrayCorrection", "F2Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[5] = ::GetPrivateProfileInt("GrayCorrection", "F1Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[6] = ::GetPrivateProfileInt("GrayCorrection", "F6Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[7] = ::GetPrivateProfileInt("GrayCorrection", "F5Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[8] = ::GetPrivateProfileInt("GrayCorrection", "F4Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[9] = ::GetPrivateProfileInt("GrayCorrection", "F3Offset", 117, INI_FILE_NAME); iGrayCorrectionParam[10] = ::GetPrivateProfileInt("GrayCorrection", "F2Offset", 117, INI_FILE_NAME); iGrayCorrectionParam[11] = ::GetPrivateProfileInt("GrayCorrection", "F1Offset", 117, INI_FILE_NAME); iGrayCorrectionParam[12] = ::GetPrivateProfileInt("GrayCorrection", "F6Offset", 117, INI_FILE_NAME); iGrayCorrectionParam[13] = ::GetPrivateProfileInt("GrayCorrection", "F5Offset", 117, INI_FILE_NAME); iGrayCorrectionParam[14] = ::GetPrivateProfileInt("GrayCorrection", "F4Offset", 117, INI_FILE_NAME); iGrayCorrectionParam[15] = ::GetPrivateProfileInt("GrayCorrection", "BBExposure", 233, INI_FILE_NAME); iGrayCorrectionParam[16] = ::GetPrivateProfileInt("GrayCorrection", "BGExposure", 418, INI_FILE_NAME); iGrayCorrectionParam[17] = ::GetPrivateProfileInt("GrayCorrection", "BRExposure", 220, INI_FILE_NAME); iGrayCorrectionParam[18] = ::GetPrivateProfileInt("GrayCorrection", "B3Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[19] = ::GetPrivateProfileInt("GrayCorrection", "B2Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[20] = ::GetPrivateProfileInt("GrayCorrection", "B1Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[21] = ::GetPrivateProfileInt("GrayCorrection", "B6Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[22] = ::GetPrivateProfileInt("GrayCorrection", "B5Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[23] = ::GetPrivateProfileInt("GrayCorrection", "B4Gain", 24, INI_FILE_NAME); iGrayCorrectionParam[24] = ::GetPrivateProfileInt("GrayCorrection", "B3Offset", 64, INI_FILE_NAME); iGrayCorrectionParam[25] = ::GetPrivateProfileInt("GrayCorrection", "B2Offset", 64, INI_FILE_NAME); iGrayCorrectionParam[26] = ::GetPrivateProfileInt("GrayCorrection", "B1Offset", 64, INI_FILE_NAME); iGrayCorrectionParam[27] = ::GetPrivateProfileInt("GrayCorrection", "B6Offset", 64, INI_FILE_NAME); iGrayCorrectionParam[28] = ::GetPrivateProfileInt("GrayCorrection", "B5Offset", 64, INI_FILE_NAME); iGrayCorrectionParam[29] = ::GetPrivateProfileInt("GrayCorrection", "B4Offset", 64, INI_FILE_NAME); memcpy(m_sFlatCorrection.GrayCorrection,iGrayCorrectionParam,sizeof(iGrayCorrectionParam)); iGrayFlatParam[0] = ::GetPrivateProfileInt("GrayFlat", "FBExposure", 340, INI_FILE_NAME); iGrayFlatParam[1] = ::GetPrivateProfileInt("GrayFlat", "FGExposure", 620, INI_FILE_NAME); iGrayFlatParam[2] = ::GetPrivateProfileInt("GrayFlat", "FRExposure", 324, INI_FILE_NAME); iGrayFlatParam[3] = ::GetPrivateProfileInt("GrayFlat", "F3Gain", 24, INI_FILE_NAME); iGrayFlatParam[4] = ::GetPrivateProfileInt("GrayFlat", "F2Gain", 24, INI_FILE_NAME); iGrayFlatParam[5] = ::GetPrivateProfileInt("GrayFlat", "F1Gain", 24, INI_FILE_NAME); iGrayFlatParam[6] = ::GetPrivateProfileInt("GrayFlat", "F6Gain", 24, INI_FILE_NAME); iGrayFlatParam[7] = ::GetPrivateProfileInt("GrayFlat", "F5Gain", 24, INI_FILE_NAME); iGrayFlatParam[8] = ::GetPrivateProfileInt("GrayFlat", "F4Gain", 24, INI_FILE_NAME); iGrayFlatParam[9] = ::GetPrivateProfileInt("GrayFlat", "F3Offset", 117, INI_FILE_NAME); iGrayFlatParam[10] = ::GetPrivateProfileInt("GrayFlat", "F2Offset", 117, INI_FILE_NAME); iGrayFlatParam[11] = ::GetPrivateProfileInt("GrayFlat", "F1Offset", 117, INI_FILE_NAME); iGrayFlatParam[12] = ::GetPrivateProfileInt("GrayFlat", "F6Offset", 117, INI_FILE_NAME); iGrayFlatParam[13] = ::GetPrivateProfileInt("GrayFlat", "F5Offset", 117, INI_FILE_NAME); iGrayFlatParam[14] = ::GetPrivateProfileInt("GrayFlat", "F4Offset", 117, INI_FILE_NAME); iGrayFlatParam[15] = ::GetPrivateProfileInt("GrayFlat", "BBExposure", 233, INI_FILE_NAME); iGrayFlatParam[16] = ::GetPrivateProfileInt("GrayFlat", "BGExposure", 418, INI_FILE_NAME); iGrayFlatParam[17] = ::GetPrivateProfileInt("GrayFlat", "BRExposure", 220, INI_FILE_NAME); iGrayFlatParam[18] = ::GetPrivateProfileInt("GrayFlat", "B3Gain", 24, INI_FILE_NAME); iGrayFlatParam[19] = ::GetPrivateProfileInt("GrayFlat", "B2Gain", 24, INI_FILE_NAME); iGrayFlatParam[20] = ::GetPrivateProfileInt("GrayFlat", "B1Gain", 24, INI_FILE_NAME); iGrayFlatParam[21] = ::GetPrivateProfileInt("GrayFlat", "B6Gain", 24, INI_FILE_NAME); iGrayFlatParam[22] = ::GetPrivateProfileInt("GrayFlat", "B5Gain", 24, INI_FILE_NAME); iGrayFlatParam[23] = ::GetPrivateProfileInt("GrayFlat", "B4Gain", 24, INI_FILE_NAME); iGrayFlatParam[24] = ::GetPrivateProfileInt("GrayFlat", "B3Offset", 64, INI_FILE_NAME); iGrayFlatParam[25] = ::GetPrivateProfileInt("GrayFlat", "B2Offset", 64, INI_FILE_NAME); iGrayFlatParam[26] = ::GetPrivateProfileInt("GrayFlat", "B1Offset", 64, INI_FILE_NAME); iGrayFlatParam[27] = ::GetPrivateProfileInt("GrayFlat", "B6Offset", 64, INI_FILE_NAME); iGrayFlatParam[28] = ::GetPrivateProfileInt("GrayFlat", "B5Offset", 64, INI_FILE_NAME); iGrayFlatParam[29] = ::GetPrivateProfileInt("GrayFlat", "B4Offset", 64, INI_FILE_NAME); memcpy(m_sFlatCorrection.GrayFlat,iGrayFlatParam,sizeof(iGrayFlatParam)); } void CA4::SaveNewParam(int iIndex) { UINT iTempParam[30] = {0}; UpdateData(TRUE); iTempParam[0] = m_tbxFRExposure; iTempParam[1] = m_tbxFGExposure; iTempParam[2] = m_tbxFBExposure; iTempParam[3] = m_tbxF1Gain; iTempParam[4] = m_tbxF2Gain; iTempParam[5] = m_tbxF3Gain; iTempParam[6] = m_tbxF4Gain; iTempParam[7] = m_tbxF5Gain; iTempParam[8] = m_tbxF6Gain; iTempParam[9] = m_tbxF1Offset; iTempParam[10] = m_tbxF2Offset; iTempParam[11] = m_tbxF3Offset; iTempParam[12] = m_tbxF4Offset; iTempParam[13] = m_tbxF5Offset; iTempParam[14] = m_tbxF6Offset; iTempParam[15] = m_tbxBRExposure; iTempParam[16] = m_tbxBGExposure; iTempParam[17] = m_tbxBBExposure; iTempParam[18] = m_tbxB1Gain; iTempParam[19] = m_tbxB2Gain; iTempParam[20] = m_tbxB3Gain; iTempParam[21] = m_tbxB4Gain; iTempParam[22] = m_tbxB5Gain; iTempParam[23] = m_tbxB6Gain; iTempParam[24] = m_tbxB1Offset; iTempParam[25] = m_tbxB2Offset; iTempParam[26] = m_tbxB3Offset; iTempParam[27] = m_tbxB4Offset; iTempParam[28] = m_tbxB5Offset; iTempParam[29] = m_tbxB6Offset; UpdateData(FALSE); switch (iIndex) { case 0: memcpy(m_sFlatCorrection.ColorCorrection, iTempParam, sizeof(iTempParam)); WriteParamFile(); break; case 1: memcpy(m_sFlatCorrection.ColorFlat, iTempParam, sizeof(iTempParam)); WriteParamFile(); break; case 2: memcpy(m_sFlatCorrection.GrayCorrection, iTempParam, sizeof(iTempParam)); WriteParamFile(); break; case 3: memcpy(m_sFlatCorrection.GrayFlat, iTempParam, sizeof(iTempParam)); WriteParamFile(); break; default: break; } } void CA4::WriteParamFile() { CString csColorCorrection[30]; CString csColorFlat[30]; CString csGrayCorrection[30]; CString csGrayFlat[30]; for(int i = 0;i < 30; i++) { csColorCorrection[i].Format(_T("%d"),m_sFlatCorrection.ColorCorrection[i]); csColorFlat[i].Format(_T("%d"),m_sFlatCorrection.ColorFlat[i]); csGrayCorrection[i].Format(_T("%d"),m_sFlatCorrection.GrayCorrection[i]); csGrayFlat[i].Format(_T("%d"),m_sFlatCorrection.GrayFlat[i]); } WritePrivateProfileString("ColorCorrection", "FBExposure", csColorCorrection[0], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "FGExposure", csColorCorrection[1], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "FRExposure", csColorCorrection[2], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F3Gain", csColorCorrection[3], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F2Gain", csColorCorrection[4], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F1Gain", csColorCorrection[5], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F6Gain", csColorCorrection[6], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F5Gain", csColorCorrection[7], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F4Gain", csColorCorrection[8], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F3Offset", csColorCorrection[9], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F2Offset", csColorCorrection[10], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F1Offset", csColorCorrection[11], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F6Offset", csColorCorrection[12], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F5Offset", csColorCorrection[13], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "F4Offset", csColorCorrection[14], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "BBExposure", csColorCorrection[15], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "BGExposure", csColorCorrection[16], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "BRExposure", csColorCorrection[17], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B3Gain", csColorCorrection[18], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B2Gain", csColorCorrection[19], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B1Gain", csColorCorrection[20], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B6Gain", csColorCorrection[21], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B5Gain", csColorCorrection[22], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B4Gain", csColorCorrection[23], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B3Offset", csColorCorrection[24], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B2Offset", csColorCorrection[25], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B1Offset", csColorCorrection[26], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B6Offset", csColorCorrection[27], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B5Offset", csColorCorrection[28], INI_FILE_NAME); WritePrivateProfileString("ColorCorrection", "B4Offset", csColorCorrection[29], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "FBExposure", csColorFlat[0], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "FGExposure", csColorFlat[1], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "FRExposure", csColorFlat[2], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F3Gain", csColorFlat[3], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F2Gain", csColorFlat[4], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F1Gain", csColorFlat[5], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F6Gain", csColorFlat[6], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F5Gain", csColorFlat[7], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F4Gain", csColorFlat[8], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F3Offset", csColorFlat[9], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F2Offset", csColorFlat[10], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F1Offset", csColorFlat[11], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F6Offset", csColorFlat[12], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F5Offset", csColorFlat[13], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "F4Offset", csColorFlat[14], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "BBExposure", csColorFlat[15], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "BGExposure", csColorFlat[16], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "BRExposure", csColorFlat[17], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B3Gain", csColorFlat[18], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B2Gain", csColorFlat[19], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B1Gain", csColorFlat[20], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B6Gain", csColorFlat[21], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B5Gain", csColorFlat[22], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B4Gain", csColorFlat[23], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B3Offset", csColorFlat[24], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B2Offset", csColorFlat[25], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B1Offset", csColorFlat[26], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B6Offset", csColorFlat[27], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B5Offset", csColorFlat[28], INI_FILE_NAME); WritePrivateProfileString("ColorFlat", "B4Offset", csColorFlat[29], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "FBExposure", csGrayCorrection[0], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "FGExposure", csGrayCorrection[1], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "FRExposure", csGrayCorrection[2], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F3Gain", csGrayCorrection[3], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F2Gain", csGrayCorrection[4], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F1Gain", csGrayCorrection[5], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F6Gain", csGrayCorrection[6], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F5Gain", csGrayCorrection[7], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F4Gain", csGrayCorrection[8], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F3Offset", csGrayCorrection[9], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F2Offset", csGrayCorrection[10], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F1Offset", csGrayCorrection[11], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F6Offset", csGrayCorrection[12], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F5Offset", csGrayCorrection[13], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "F4Offset", csGrayCorrection[14], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "BBExposure", csGrayCorrection[15], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "BGExposure", csGrayCorrection[16], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "BRExposure", csGrayCorrection[17], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B3Gain", csGrayCorrection[18], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B2Gain", csGrayCorrection[19], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B1Gain", csGrayCorrection[20], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B6Gain", csGrayCorrection[21], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B5Gain", csGrayCorrection[22], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B4Gain", csGrayCorrection[23], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B3Offset", csGrayCorrection[24], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B2Offset", csGrayCorrection[25], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B1Offset", csGrayCorrection[26], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B6Offset", csGrayCorrection[27], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B5Offset", csGrayCorrection[28], INI_FILE_NAME); WritePrivateProfileString("GrayCorrection", "B4Offset", csGrayCorrection[29], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "FBExposure", csGrayFlat[0], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "FGExposure", csGrayFlat[1], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "FRExposure", csGrayFlat[2], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F3Gain", csGrayFlat[3], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F2Gain", csGrayFlat[4], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F1Gain", csGrayFlat[5], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F6Gain", csGrayFlat[6], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F5Gain", csGrayFlat[7], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F4Gain", csGrayFlat[8], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F3Offset", csGrayFlat[9], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F2Offset", csGrayFlat[10], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F1Offset", csGrayFlat[11], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F6Offset", csGrayFlat[12], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F5Offset", csGrayFlat[13], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "F4Offset", csGrayFlat[14], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "BBExposure", csGrayFlat[15], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "BGExposure", csGrayFlat[16], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "BRExposure", csGrayFlat[17], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B3Gain", csGrayFlat[18], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B2Gain", csGrayFlat[19], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B1Gain", csGrayFlat[20], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B6Gain", csGrayFlat[21], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B5Gain", csGrayFlat[22], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B4Gain", csGrayFlat[23], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B3Offset", csGrayFlat[24], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B2Offset", csGrayFlat[25], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B1Offset", csGrayFlat[26], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B6Offset", csGrayFlat[27], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B5Offset", csGrayFlat[28], INI_FILE_NAME); WritePrivateProfileString("GrayFlat", "B4Offset", csGrayFlat[29], INI_FILE_NAME); } void CA4::OnDeltaposSpinAgain(NMHDR *pNMHDR, LRESULT *pResult) { LPNMUPDOWN pNMUpDown = reinterpret_cast(pNMHDR); // TODO: 在此添加控件通知处理程序代码 UpdateData(true); if(pNMUpDown->iDelta == -1) // 如果此值为-1 , 说明点击了Spin的往下的箭头 { AUpGain(); } else if(pNMUpDown->iDelta == 1) // 如果此值为1, 说明点击了Spin的往上的箭头 { ADownGain(); } UpdateData(false); *pResult = 0; } void CA4::OnDeltaposSpinAoffset(NMHDR *pNMHDR, LRESULT *pResult) { LPNMUPDOWN pNMUpDown = reinterpret_cast(pNMHDR); // TODO: 在此添加控件通知处理程序代码 UpdateData(true); if(pNMUpDown->iDelta == -1) // 如果此值为-1 , 说明点击了Spin的往下的箭头 { AUpOffset(); } else if(pNMUpDown->iDelta == 1) // 如果此值为1, 说明点击了Spin的往上的箭头 { ADownOffset(); } UpdateData(false); *pResult = 0; } void CA4::OnDeltaposSpinBgain(NMHDR *pNMHDR, LRESULT *pResult) { LPNMUPDOWN pNMUpDown = reinterpret_cast(pNMHDR); // TODO: 在此添加控件通知处理程序代码 UpdateData(true); if(pNMUpDown->iDelta == -1) // 如果此值为-1 , 说明点击了Spin的往下的箭头 { BUpGain(); } else if(pNMUpDown->iDelta == 1) // 如果此值为1, 说明点击了Spin的往上的箭头 { BDownGain(); } UpdateData(false); *pResult = 0; } void CA4::OnDeltaposSpinBoffset(NMHDR *pNMHDR, LRESULT *pResult) { LPNMUPDOWN pNMUpDown = reinterpret_cast(pNMHDR); // TODO: 在此添加控件通知处理程序代码 UpdateData(true); if(pNMUpDown->iDelta == -1) // 如果此值为-1 , 说明点击了Spin的往下的箭头 { BUpOffset(); } else if(pNMUpDown->iDelta == 1) // 如果此值为1, 说明点击了Spin的往上的箭头 { BDownOffset(); } UpdateData(false); *pResult = 0; } void CA4::ADownGain() { UpdateData(true); m_tbxF1Gain -= m_tbxAGain; m_tbxF2Gain -= m_tbxAGain; m_tbxF3Gain -= m_tbxAGain; m_tbxF4Gain -= m_tbxAGain; m_tbxF5Gain -= m_tbxAGain; m_tbxF6Gain -= m_tbxAGain; UpdateData(false); } void CA4::AUpGain() { UpdateData(true); m_tbxF1Gain += m_tbxAGain; m_tbxF2Gain += m_tbxAGain; m_tbxF3Gain += m_tbxAGain; m_tbxF4Gain += m_tbxAGain; m_tbxF5Gain += m_tbxAGain; m_tbxF6Gain += m_tbxAGain; UpdateData(false); } void CA4::BDownGain() { UpdateData(true); m_tbxB1Gain -= m_tbxBGain; m_tbxB2Gain -= m_tbxBGain; m_tbxB3Gain -= m_tbxBGain; m_tbxB4Gain -= m_tbxBGain; m_tbxB5Gain -= m_tbxBGain; m_tbxB6Gain -= m_tbxBGain; UpdateData(false); } void CA4::BUpGain() { UpdateData(true); m_tbxB1Gain += m_tbxBGain; m_tbxB2Gain += m_tbxBGain; m_tbxB3Gain += m_tbxBGain; m_tbxB4Gain += m_tbxBGain; m_tbxB5Gain += m_tbxBGain; m_tbxB6Gain += m_tbxBGain; UpdateData(false); } void CA4::ADownOffset() { UpdateData(true); m_tbxF1Offset -= m_tbxAOffset; m_tbxF2Offset -= m_tbxAOffset; m_tbxF3Offset -= m_tbxAOffset; m_tbxF4Offset -= m_tbxAOffset; m_tbxF5Offset -= m_tbxAOffset; m_tbxF6Offset -= m_tbxAOffset; UpdateData(false); } void CA4::AUpOffset() { UpdateData(true); m_tbxF1Offset += m_tbxAOffset; m_tbxF2Offset += m_tbxAOffset; m_tbxF3Offset += m_tbxAOffset; m_tbxF4Offset += m_tbxAOffset; m_tbxF5Offset += m_tbxAOffset; m_tbxF6Offset += m_tbxAOffset; UpdateData(false); } void CA4::BDownOffset() { UpdateData(true); m_tbxB1Offset -= m_tbxBOffset; m_tbxB2Offset -= m_tbxBOffset; m_tbxB3Offset -= m_tbxBOffset; m_tbxB4Offset -= m_tbxBOffset; m_tbxB5Offset -= m_tbxBOffset; m_tbxB6Offset -= m_tbxBOffset; UpdateData(false); } void CA4::BUpOffset() { UpdateData(true); m_tbxB1Offset += m_tbxBOffset; m_tbxB2Offset += m_tbxBOffset; m_tbxB3Offset += m_tbxBOffset; m_tbxB4Offset += m_tbxBOffset; m_tbxB5Offset += m_tbxBOffset; m_tbxB6Offset += m_tbxBOffset; UpdateData(false); }