커뮤니티

미완성신호 객체 질문

프로필 이미지
Ricky
2014-04-24 16:22:45
1156
글번호 222947
답변완료
var Signal1 = Chart1.GetIncompleteSignal(); if (Signal1 != null && Signal1[0] != null) { c1_price=Signal1[0].price; c1_name=Signal1[0].name; } 1초마다 돌려서 미완성 신호 상태를 검사하려고 하는데 저 구문이 맞는지 아직 잘 모르겠습니다. 1. 예비신호 가격을 가져오려면 Signal1[0].price 로 하는것인가요? Signal1.price 로 하는 것인가요? [0] 의 의미가 무엇인지요? 2. var Signal1 = Chart1.GetIncompleteSignal(); 을 1초 마다 돌렸다면 예비신호가 나왔다가 없어졌다면 나왔을때 null 이 아닌 값이 들어갔을것인데, 다시 예비신호가 없어진 후 1초 타이머에 걸려서 위 구문이 돌아가면 Signal1 에 신호가 없으니 다시 null 값이 들어가나요? [0] 을 써야 하는 것이라면 [0] 쪽에만 null 이 들어가나요? 그럼, [0] 이 있다는 것은 예스랭귀지처럼 이전값의 경우는 [1] 이 되는 것인가요? 이런 세세한 부분에 대한 메뉴얼이 찾아봐도 없어서 여기에 질문 드립니다.
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2014-05-08 16:37:05

안녕하세요 예스스탁입니다. 1, Signal1[0].price로 작성하셔야 합니다. 미완성신호는 동일시점에 여러개가 발생할수 있습니다. 그러므로 Chart1.GetIncompleteSignal()는 배열값으로 미완성신호정보가 리턴됩니다 만약 동일시점에 2개가 발생했다면 [0],[1]번방에 각 미완성신호에 대한 정보가 저장이 되고 각 배열방을 지정해서 값이나 이름을 불러와 사용하셔야 합니다. 2 1번에 답변드린 부분과 같이 [1]은 이전값이 아닙니다. 예비신호가 나왔다가 없어졌다가를 반복하므로 직전에 미완성신호가 2개 나와서 [0],[1]에 값을 저장했는데 이후에 1개만 발생하거나 하나도 발생하지 않아도 [0]과 [1]번방에 값이 남게 됩니다. 그러므로 아래와 같이 사용후에는 각 배열방의 저장된 값을 삭제하는 내용이 필요합니다. function Main_OnStart() { Main.SetTimer(1, 1000) } function Main_OnTimer(nEventID) { if(nEventID == 1) { var Signal1 = Chart1.GetIncompleteSignal(); if (Signal1 != null) { //확인 Main.MessageList(Signal1[0].name,Signal1[0].price, Signal1[1].name,Signal1[1].price) //확인 후 삭제 //모든 배열방 내용 삭제 (Signal1.length는 배열의 값이 저장된 방갯수) for (var i = 0; i < Signal1.length; i++) { Main.RemoveIncompleteSignal(Signal1[i]); } } } } 즐거운 하루되세요 > Ricky 님이 쓴 글입니다. > 제목 : 미완성신호 객체 질문 > var Signal1 = Chart1.GetIncompleteSignal(); if (Signal1 != null && Signal1[0] != null) { c1_price=Signal1[0].price; c1_name=Signal1[0].name; } 1초마다 돌려서 미완성 신호 상태를 검사하려고 하는데 저 구문이 맞는지 아직 잘 모르겠습니다. 1. 예비신호 가격을 가져오려면 Signal1[0].price 로 하는것인가요? Signal1.price 로 하는 것인가요? [0] 의 의미가 무엇인지요? 2. var Signal1 = Chart1.GetIncompleteSignal(); 을 1초 마다 돌렸다면 예비신호가 나왔다가 없어졌다면 나왔을때 null 이 아닌 값이 들어갔을것인데, 다시 예비신호가 없어진 후 1초 타이머에 걸려서 위 구문이 돌아가면 Signal1 에 신호가 없으니 다시 null 값이 들어가나요? [0] 을 써야 하는 것이라면 [0] 쪽에만 null 이 들어가나요? 그럼, [0] 이 있다는 것은 예스랭귀지처럼 이전값의 경우는 [1] 이 되는 것인가요? 이런 세세한 부분에 대한 메뉴얼이 찾아봐도 없어서 여기에 질문 드립니다.