|
BCB의 VCL TControl들은
모두 Align 속성과 Anchors 속성 그리고 Constraints 속성이 있습니다.
이 세가지를 잘이용하면 Form의 크기가 변경될때 따로 코딩을 해주지 않아도 내가 원하는 형태로 보여지게 됩니다.
1. Align 속성
enum TAlign { alNone, alTop, alBottom, alLeft, alRight, alClient, alCustom };
위와같이 7가지가 있습니다.
Align속성을 정하면 Parent의 크기가 변할때 따라서 자동으로 크기조절이 됩니다.
ListView의 Align = alClient로 설정하면
ListView의 Parent에 꽉차게 자동으로 크기 조절됩니다.
단 같은 Parent를 가지고 있는 다른 Control들이 Align속성이 있다면 그게 먼저 적용되구요
이것 저것 바꿔서 적용해 보십시요
2. Anchors ...
이 속성은 좌,우,상,하 네가지 복수설정할수 있는데
속성을 설정하면 Parent의 크기가 변하더라도 컨트롤가 Parent의 경계사이의 좌우상하 간격을
계속 똑같이 유지하는 속성입니다.
보통 컨트롤을 그냥 올려놓으면 alLeft , alTop 이 설정되는데
이경우 Parent( 폼이나.. 다른 컨트롤)의 크기가 변하더라도 Parent의 좌상에서 Parent상대위치는 동일하죠
만약 alRight , alBottom으로 설정해 놓으면 항상 오른쪽 아랫쪽에 Control이 부터있게 됩니다.
3. Contraints는 Control의 최대 크기, 최소크기를 설정하는것 입니다.
복잡한 디자인을 할때는 저 Align속성과 Anchars속성을 잘이용하시면 편리합니다.
코딩이 아니라면
위와 속성과 관련되어있을 것입니다.
그럼
에스프레소 님이 쓰신 글 :
: 안녕하세요 이제 bcb 막 접한지 얼마 안 되는 초보자 입니다.
:
: 질문사항이 있어 이렇게 글을 올립니다.
:
: 폼을 마우스로 드래그 하여 리사이즈를 하면 이상이 없는데
:
: 최대화 버튼을 누른후 다시 돌아가기를 하면
:
: 리스트 뷰의 크기가 줄어드는 현상이 있습니다.
:
: 일정 크기까지 줄어들다가 이런 현상이 멈춤니다.
:
: 다시 마우스로 드래그를 하면 제대로된 크기로 돌아오지만
:
: 최대 활성화창으로 누른후 원래크기로 돌아오면 다시 줄어드는 현상이 생깁니다.
:
: 원인이 어디에 있을지 답변좀 부탁드립니다.
|