Q&A

  • 곰플레이어 같은 폼 리사이즈에 대해 질문 드립니다.
안녕하세요. 초짜 델파이 유저 Yull 입니다.

곰플레이어 프로그램을 보면, 메인폼이 라운딩처리(폼 모서리를 둥글게..)가 된 상태에서
폼 리사이즈가 가능합니다.

현재 Delphi 2007 을 사용하고 있고, 지금까지 시도해 본 것은

1. 폼의 Transparent 속성을 설정하고 폼에 이미지를 입히면 라운딩 효과가 나긴 하는데 (물론 리사이즈 가능)
    BorderStyle 이 bsSizeable 이다 보니 폼 테두리가 두껍게 나옵니다.

2. 폼의 BorderStyle 을 bsNone 으로 설정하고 (기본적으로 폼 리사이즈 불가상태)
    CreateRoundRectRgn 과 SetWindowRgn을 사용하여 폼 모서리를 둥글게 깎은 다음
    폼의 MouseMove 이벤트를 사용하여 코딩으로 폼 리사이즈를 구현한 것인데 편법으로 해서 그런지
    폼의 상단을 잡고 아래로 리사이즈를 하면 화면 전체가 이동해 버리고 (빈번하게 발생 ㅠ.ㅠ)
    폼의 이미지가 리프레시가 안되는 현상이 발생합니다. (MouseUp 후에는 괜찮습니다.)

곰플레이어를 보면 폼 테두리도 BorderStyle := bsNone 일때처럼 단선으로 나오면서 폼 리사이즈도
자연스럽게 되는데, 현재까지 아무리 검색해봐도 마땅한 해결책을 못찾은 상태입니다. 쩝.

구현하려고 하는 것은 폼의 테두리가 얇게 나오면서 폼 리사이즈가 가능한 것입니다.
고수님들의 조언 부탁드립니다.

즐거운 한주 되세요. ^^
4  COMMENTS
서버에 요청 중입니다. 잠시만 기다려 주십시오...