|
혹시 수치가 바뀌는가를 다음처럼 조사했더니..
ShowMessage(ListView1->Top);
ShowMessage(ListView1->Left);
글쎄 분명히 수치를 입력했는데, 매번 입력해둔 수치와는 전혀 달라져있지뭡니까..
그 이유를 확인해보니깐.. 이 수치는 Form1 내의 상대성 위치(수치)라서..
Form1을 전체화면에 출력했을때의 수치와 작업을위해 Form1을 잠시
반으로접어두었을때의 ListView1의 Left 또는 Top 수치가 매번달라져 버리더군요..
그래서.. 이수치는 직접입력해두는것보다도 프로그램상에서 ListView1->Left=100;
ListView1->Top=50; 처럼 실행될때 주어지는것이 안전하다는걸 확인했습니다.
ps: 당연히 입력한대로 변하지않으리라믿었던 값이변할줄은
설마 몰랐습니다. 당연하리라 생각하고 다른데서 원인을
찾느라 고생만 했네요..
오늘 또하나배웠습니다 ---> 당연한것도 다시 확인해보자!
백상열 님이 쓰신 글 :
: 여러개의 필드로된 data의 List에는 ListBox가 아니라 ListView를 사용해보라고
: 조언주신 C++X() 님 감사합니다.
: ListView가 있다는걸알고 그옵션을 찾아보니 vsReport옵션이 있더군요 이걸로
: 해보니 생각대로 잘됩니다. 그런데, 한가지 문제가생겼습니다.
:
: 내가 잘못한건지, 아니면 원래 ListView가 그런건지는 잘 모르겟습니다만,
: vsReport 옵션에다 ReadOnly옵션을 true로 주니깐 이 ListView1이 지정한
: Left,Top위치에 나타나지않고 엉뚱한곳에서 나타납니다 - -;
:
: 그런데, RedaOnly를 false로 끄고나니깐 다시 지정한 Left,Top 위치에 바르게 나타납니다.
:
: 원래이런가요 아니면 무슨 문제일까요 ? 아시는분 조언 부탁합니다. 그럼..
|