⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 settingform.cpp

📁 16 relay output channels and 16 isolated digital input channels LED indicators to show activated
💻 CPP
字号:
//---------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "SettingForm.h"
#include "MainForm.h"
//---------------------------------------------------------------------
#pragma resource "*.dfm"
TDISettingDlg *DISettingDlg;
//--------------------------------------------------------------------- 
__fastcall TDISettingDlg::TDISettingDlg(TComponent* AOwner)
	: TForm(AOwner)
{
}
//---------------------------------------------------------------------
void __fastcall TDISettingDlg::FormShow(TObject *Sender)
{
  int i;
   AnsiString szBuff;
   for( i = 0;i< frmMain->m_DIChanNum ;i++)
   {
       szBuff.sprintf("Port%X_%2.2d",i / 8,i % 8 );
      chklstChan->Items->Add(szBuff);
   }

    for( i = 0;i< frmMain->m_DIPortNum ;i++)
   {
       szBuff.sprintf("Port%X",i );
       chklstPort->Items->Add(szBuff);
   }


      for( i = 0;i< frmMain->m_DIPortNum ;i++)
   {
      if (DISetting[i] == 0xFF)
         chklstPort->Checked[i] = true;

      for( int j = 0; j<8; j++ )
      {
         if ((DISetting[i] & (1 << j)) != 0)
            chklstChan->Checked[i * 8 + j] = true;
         else
            chklstChan->Checked[i * 8 + j] = false;
      }
   }

         
}
//---------------------------------------------------------------------------


void __fastcall TDISettingDlg::chklstPortClickCheck(TObject *Sender)
{
 int i,j;

   for( i = 0; i<chklstPort->Items->Count;i++)
   {
         for( j = 0;j <8;j++)
               chklstChan->Checked[i * 8 + j] = chklstPort->Checked[i];
    }        
}
//---------------------------------------------------------------------------

void __fastcall TDISettingDlg::OKBtnClick(TObject *Sender)
{
  for(int  i = 0;i< frmMain->m_DIChanNum ;i++)
      {
         if (chklstChan->Checked[i])
            DISetting[i / 8] = DISetting[i / 8] | (1 << (i % 8));
         else
            DISetting[i / 8] = DISetting[i / 8] & (~(1 << (i % 8)));
      }        
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -