C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[49094] Re:[講초보]패널 2개를 연결하려고 합니다.
장성호 [nasilso] 1279 읽음    2007-04-27 14:34
에....
이것 그냥 쉽게 되는 방법은 없을것 같네요
그런것을 지원해주는 라이브러리가 있는지는 모르겠구요

1. 박스 생성( TPanel  로 하는경우 )
   1)  박스생성 버튼 클릭시 변수를 하나 체크 해두시구요
   2) FormMouseDown이벤트에서 박스생성모드이면 
          현재 Mouse위치에 TPanel을 생성하시면 됩니다.

2.  버튼을 누른후 박스를 클릭하면 서로 선으로 이어지기
    - 박스가 두개여야  선으로 이을수 있겠죠
    - 그러니 박스(TPanel) 이 생성될때  TPanel이 Click이벤트( 또는 MouseDown 등)를 만들어 두셔야 겠네요
    - 여기서 어떻게 어떻게 마우스+키보드 이벤트를 이용해서 연결할 것인지 정해야 되겠죠
      ( 예 1  - 첫번째 패널에서 마우스down 한후 두번째 Panel에서 마우스up하면 연결되도록 한다)
      ( 예 2  - shift 키를 누른 상태에서  Panel 두개를 클릭하면 선으로 연결한다.)
   

3. 선연결 방법  (  직선 연결 , 직각 꺽은선 연결  )
    - 이것도 여러가지 방법이 있습니다만 Form의 Canvas에다가 직접 draw하는경우로 생각해 보죠
    1) 직선 연결 
         두 패널의 중심 좌표를 계산해서  (x1,y1 )  - (x2,y2 )  직선을 그려주면 될것입니다.
        ( MoveTo , LineTo )
        문론 여기서도 Form이 repaint 될때 다시 그려주는 부분을 해야 되구요

    2) 직각 꺽은선 연결
         - 이것은 좀더 많이 생각해야 할것이 있겠네요   
         - PowerPoint 처럼 중심점이  가로로 세로로 어느정도 차이가 나면 꺽은선으로 할지 결정이 필요하구요
          


하여간  원하시는 기능은
  vcl에 대해서 .. Builder에 대해서 기술적으로 많이 알아야 되는것은 아닌것 같은데...
  직접 powerpoint의 도형과 연결선 그리기 같은것을 구현하려면 좀 머리 아플것 입니다.



Panel을 동적 생성하는 방법
선그리는 방법 등은 여기 검색하면 많이 나와요


            
        
  
   

   

확인해 본후


나쁜토끼 님이 쓰신 글 :
: 안녕하세요.
:
: 이제 막 볼랜드 C++ 5.0을 배우기 시작한 초보입니다.
: 강의를 하나하나 보면서 따라하면서...배우고 있는데.. 어려움이 많습니다.
:
:
: 쥐가 미로를 빠져나오듯이..
: 기본이 될만한 간단한 안내표지판을 만들어 보고싶습니다.
: 간단히 쥐와 끝지점을 만들고 이어주면 대각선방향이라도 ┏━┛이런식으로 꺽여서 나오겠지요.
: 쥐가있는 시작점과 끝지점을 박스로 만들면 될것이라 생각해서 panel로 제작을 해보고자합니다.
:
: 기본이 안되어 있어서... 많은 가르침 부탁드립니다.
:
: 완벽한 소스를 원하는것이 아니라 배우고자하기때문에
: 밑에 기능에 대한 방법과 설명을 하나씩이라도 알려주시면 감사하겠습니다.
:
:
: 기본조건이 될만한것이
: [박스생성] [선으로 연결하기] 2개의 버튼을 두는 것이겠지요.
:
: 1.[박스생성]버튼을 누른후 Form에 마우스로 클릭 하면 박스(panel)이 생성되도록 하는법.
:
: 2. [선으로 연결하기] 버튼을 누른후 박스를 누르면 서로 선으로 이어지도록하는 법.
:
: 3. 박스를 움직여도 선이 끊어지지않고 따라오도록 하는법
:
: ....
: 잘몰라서 그냥 생각되는대로 적었습니다.
: 혹시 비슷한 소스라도 가지고 계시다면 알려주시면 감사하겠습니다.

+ -

관련 글 리스트
49091 [講초보]패널 2개를 연결하려고 합니다. 나쁜토끼 1113 2007/04/27
49094     Re:[講초보]패널 2개를 연결하려고 합니다. 장성호 1279 2007/04/27
49098         Re:Re:[講초보]패널 2개를 연결하려고 합니다. 김배근 1126 2007/04/27
49120             Re:Re:Re:[講초보]패널 2개를 연결하려고 합니다. 나쁜토끼 1043 2007/04/30
49151                 Re:Re:Re:Re:[講초보]패널 2개를 연결하려고 합니다. 김배근 1033 2007/05/02
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.