라커 대여 프로그램과 같은 화면을 구성하려고 합니다.
버튼의 형태는 이렇습니다.
+----------------+
| M00001 | <----- 파란색 바탕에 이미지
+----------------+
| 홍길동 |
| 사용중 | <----- 흰색 바탕
| 20080101 |
+----------------+
Panel 안에 위와 같은 형태로 버튼을 동적으로 생성하려고 합니다.
굳이 버튼이 아니라도 Panel이나 스피드버튼 등등
어떤 형태로든 이와 같이 표현만 되면 됩니다.
추가로 Panel안에 버튼이 들어가는데, Parent Panel의 크기에 따라
가변적으로 버튼의 위치가 바뀌었으면 합니다.
참고로 델파이에 있는 ButtonGroup 이나 CategoryButtons, GridPanel 등의 컴포넌트가
이와 유사한 기능을 하는것으로 보입니다.
아래처럼 버튼을 동적 생성하시고..
var
Button : TButton;
begin
Button := TButton.Create(Self);
Button.Parent := Panel1;
Button.Left := 10;
Button.Top := 10;
Button.Caption := '테스트';
end;
버튼의 위치는 Panel 의 Resize 이벤트가 발생시 조정해주시면 되겠네요..
이를테면.. Resize 이벤트시 중앙에 버튼을 오게 한다면..
Button.Left := (Panel.Width - Button.Width) div 2;
Button.Top := (Panel.Height - Button.height) div 2;
참고하셔서 즐거운 프로그래밍 하세요..