|
CheckScanList[0~7][0~15] check 박스 수열을 만들어서 체크 박스에 체크는 제대로 됩니다
scan 버튼을 누르면
-------------------------------------------------------------------------
CheckScanList[0] 에 16 개중 체크된 맨처음것의 값 (아무것도 체크 안되있으면 0으로 인식)
CheckScanList[1] 에 16 개중 체크된 맨처음것의 값
CheckScanList[2] 에 16 개중 체크된 맨처음것의 값
.
...
CheckScanList[6] 에 16 개중 체크된 맨처음것의 값
CheckScanList[7] 에 16 개중 체크된 맨처음것의 값 이렇게 16개의 값을 구한뒤 전송
-------------------------------------------------------------------------
CheckScanList[0] 에 16 개중 체크된 그 다음 체크된 값
CheckScanList[1] 에 16 개중 체크된 그 다음 체크된 값
CheckScanList[2] 에 16 개중 체크된 그 다음 체크된 값
.
...
CheckScanList[6] 에 16 개중 체크된 그 다음 체크된 값
CheckScanList[7] 에 16 개중 체크된 그 다음 체크된 값 이렇게 16개의 값을 구한뒤 전송
-------------------------------------------------------------------------
16 까지 체크한뒤 다시 처음에 체크된 값 16개를 전송
void __fastcall TFormMtx::TimerScanTimer(TObject *Sender)
{
for (int i = 0; i < OutCnt; ++i) {
++CurScanInNo[i];
if (CurScanInNo[i] >= InCnt || CurCntScan[i] == CntScan[i]) {CurScanInNo[i] = 0; CurCntScan[i] = 0;}
<--- 카운트가 16보다 커지면 다시 0으로,, 체크된 모든 갯수를 세서 모두 체크했으면 다시 처음으로
if (CheckScanList[i][CurScanInNo[i]] == true){ <-- 체크박스 체크되면 값 얻기
ScanInNo[i] = CurScanInNo[i]+1;
CurCntScan[i]++;
}
}
Send(ScanInNo[0], ScanInNo[1], ScanInNo[2], ScanInNo[3], ScanInNo[4], ScanInNo[5], ScanInNo[6], ScanInNo[7]); <-- 전송
}
ScanInNo[0] 의 값은 잘 들어와지는데 그 뒤 ScanInNo[1]~ScanInNo[7] 까지는 값들이 들어왔다 안들어왔다 들쑥 날쑥 하네요,,, ㅜㅜ
Timer 안에서 for이 잘 안되서 그런건지 해서
for 문이 아니라 직접 쭉 늘어놓아도 이상하게 그 뒤에 것들은 값을 잘 못찾아요 ㅜㅜ
질문이 너무 두서없어서 답글이 달릴까 걱정스럽네요,,
간단하게 생각했다 아주 하루종일 퇴근도 못하고 미치겠네요
도와주세요~
|