|
안녕하세요. 아직도 헤매고 있는 초보 프로그래머입니다.
현재 클라이언트에서 보낸 데이터를 서버에서 개시하는 프로그램을 제작중입니다.
현재 임프님이 제작하신 StringGrid를 사용중이고, 에디트 폼에서 입력을 누르면 그 내용이 클라이언트에 있는
StringGrid 폼에 맞게 저장됩니다.
이것을 소켓을 이용해서 서버로 보내는 구조인데요.
원래는 셀에 있는 하나씩의 데이터를 보내는 방식이였습니다.
그것이 리스트박스에 들어가서 정렬되는 방식이지요.
그러니까... 한 str안에 cell[0][1] 의 데이터가 들어가서 전송되고, 그 다음에 전송될때는 cell[0][2]가 전송되고
해서 타이머를 이용, 0.5초마다 한 데이터씩 전송되게 되어있습니다.
이 방법은 초반에는 버그없이 잘 되었는데, 그 row의 길이가 길어지면 매칭이 되는 시간이 한없이 길어진다는
단점이 생겨서 현재 그 코드를 수정중입니다.
그래서 생각한게... 아예 한 row의 데이터를 한꺼번에 보내고, 서버에서 그것을 셀에 맞게 잘라주는 방식을 하려고 합니다.
원래는 보내주는 데이터를 바로바로 서버에 있는 StringGrid에 박아주면 되었기 때문에 문제가 없었지만,
지금은 한 줄이 이동해버리니까, 그것을 알맞게 잘라주는 코드가 또 필요하게 되었습니다.
현재 구조는, 보내진 한 row는 리스트박스에 임시 저장되고, 그것을 서버 StringGrid에 잘라서 개시되어야 하는데
이 '자르는' 방법을 잘 모르겠습니다;
예전에 pos와 substring 을 이용하면 가능하다고 하신 분이 계셨는데, 그것에 대한 사용법도 너무 헷갈리네요;
질문은 다음과 같습니다.
1. 현재 데이터가 ;를 기준으로 갑니다.
col은 10개이므로 데이터는 "a;b;34;tdfg;11;gbc;ss;453;bc;fg" 이런식으로 전송됩니다.
이것을 ; 기준으로 자르는 법이 궁금합니다.
그 방법을 안다면, 리스트박스는 빼버리고 임시 str공간을 만들어서 cell[0][1] = str 이런식으로 굴리는게 가능해지겠죠.
은근히... 피싱관련이 헷갈리는군요. 이 상황에 피싱함수가 아니라 다른 좋은 것이 있는지 의견을 주셔도 감사하겠습니다.
아 추가로...
종료 버튼을 눌렀을때 "종료하시겠습니까?" 라는 메세지박스를 띄우고 예를 눌렀을때 꺼지고,
아니오를 눌렀을때 취소되는것을 만드려고 하는데
이게 메세지박스에서 리턴값을 받아서 하는건 기억나는데, 어떻게 짰는지 기억이 안나네요;
지금 포럼 사이트가 이상한지 검색이 안되고 있네요. 내부 에러라면서...
|