|
이런것까지 질문이..
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int tmp1,tmp2;
int iMoveDistance=0; //이동거리저장할 변수
int tmp1=StrToInt(ListBox1->Items->Strings[0]);//첫번째 값을 비교를 위해 따로 저장합니다.
for(int i=1;i<ListBox1->Count;i++) //ListBox내의 Item 수
{
tmp2= StrToInt(ListBox1->Items->Strings[i]); 비교해야할 i 번째 Index의 값을 정수로 변환한다.
iMoveDistance+=abs(tmp1-tmp2); //이동한거리만큼 더한다.
tmp1=tmp2; //비교값 재설정..
}
ShowMessage("이동거리는="+IntToStr(iMoveDistance)); //이동거리를 보여줌
}
X좌표 이동거리 구했으니 Y좌표 알아서 함 해보세요
허접 님이 쓰신 글 :
: 님.. 답변 감사드려요... ^^
: 그런데, 지금 하려고 하는건 마우스 커서가 이동하는 위치에 따라 ListBox에 x, y 좌표값이 찍힙니다.
: x 좌표만 찍힌다는 가정하에... 아래와 같이,
:
: |----|
: |150 |
: |151 |
: |152 |
: |153 |
: |154 |
: |155 |
: |156 |
: |. |
: |. |
: |. |
: |. |
: |. |
: |---|
:
: 이렇게 값이 들어가는데, 총 이동한 거리를 구하고 싶은겁니다.
: 저 값들을 다 더해주면.. ㅡㅡ;; 실제 이동한 거리가 아니라, 어떤 위치에서의 좌표값을 다 더해주는 결과가 되잖아요?
: 이동한 거리를 구하고 싶어요.. 위 예의 경우를 보면, 6이 되겠네요..
: 도와주세요..
:
:
:
: zepirox 님이 쓰신 글 :
: : 허접 님이 쓰신 글 :
: : : ListBox 에 정수값이 주루룩 들어갑니다..
: : :
: : : 그 값들을 모두 더해서 그 합 값을 나타내 주고 싶은데요..
: : :
: : : 더할 수 있나요? 있다면, 어찌해야 하는지 도와주세요..
: : :
: : : 모르겠어요.. ㅠ.ㅜ
: :
: : 아래와 같이 하면 되겠죠..
: : ListBox에 1부터 10까지 입력하고 더해주는 코드입니다.
: : 답은 55가 나와야 겠죠..
: : void __fastcall TForm1::Button1Click(TObject *Sender)
: : {
: : int temp=0;
: : for(int i=0;i<ListBox1->Count;i++) //ListBox내의 Item 수
: : temp+= StrToInt(ListBox1->Items->Strings[i]); i 번째 Index의 값을 정수로 변환하고 더해준다...
: :
: : ShowMessage(IntToStr(temp)); 더해준 값을 문자형으로 변경하고 보여준다.....
: : }
|