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
[54587] Re:Re:스크롤 박스 안에 원하는 콤포넌트가 있는지 체크할수 있는 방법을 알수 있나요?
linuxman [] 1258 읽음    2008-09-17 20:15
감사합니다..
제가 알고 싶었던것은... 찾는 컴포넌트가 scrollBox안에 있는지 를 check 할수 있는 방법이 있나해서요..
scrollbox 안에 있다면... HorzScrollBar->Position,ScrollBox1->VertScrollBar를 움직일 필요없고...

scrollbox밖에 있는 컴포넌트이면... 컴포넌트가 조금만이라도 보일수 있도록... 최소한으로 움직일수 있는
방법을 찾고 있습니다...
찾는 콤포넌트의 left,top으로 움직이니까,화면이 너무 이동해서..깜빡거리는 현상이 일어나서요?

거듭 감사드림니다.
*)공부에 왕도는 없겠지만,,그래도 C++builder를 정석으로 공부할수 있는 추천의 방법이 있으면... 조언해 주시면 감사하겠습니다...책이 많은것도 아니고,월간지 등이 있는것도 아닌것 같고...

장성호 님이 쓰신 글 :
: 음...
:
: [Panel위에 있는 컨트롤 찾기]
: 먼저 Panel위에 있는 Control을 찾는 방법은?
: FindChildControl을 이용하시면 됩니다.
:
: TForm에만 있는 함수가 아니라 모든 TWinControl에 있는 함수입니다.
:
:
:     //다음과 같이 찾습니다.
:     TButton *btn=(TButton *)Panel3->FindChildControl("Button1");
: 
:     //또는 아래과 같이 TEdit로 입력을 받아서..
:     TButton *btn=(TButton *)Panel3->FindChildControl(Edit1->Text);
: 
: 

:
:
: [ ScrollBox의 ScrollBar를 Control이 있는 위치로 이동]
: 님이 올린 샘플을 보니 ScrollBar위에 있는  Panel의 위치가 (0,0)이 아니더군요
: 즉 이런경우에 ScrollBar의 HorzScrollBar->Range 나 ScrollBox1->VertScrollBar->Range 가
: Panel의 크기와 일치하지 않게 됩니다.
:
: 1. 먼저 ScrollBar위에 있는  Panel의 위치를  (0,0)으로 폼 디자인타임에 설정하십시요
: 그럼 ScrollBar의 Scroll Range가 Panel의 크기와 같게 됩니다.
:
: 2. 그런다음 FindChildControl 찾은 Button의 Left , Top을 ScrollBox의
:    HorzScrollBar->Position 과 VertScrollBar->Position으로 설정하시면 됩니다.
:
:
: void __fastcall TForm1::Button6Click(TObject *Sender)
: {
:     TButton *btn=(TButton *)Panel3->FindChildControl(Edit1->Text);
:     if(btn)
:     {
:         ScrollBox1->HorzScrollBar->Position=btn->Left;
:         ScrollBox1->VertScrollBar->Position=btn->Top;
:     }
: }
: 

: 그럼...
:
:
: linuxman 님이 쓰신 글 :
: : 안녕하세요..
: : 스크롤박스 안에..아주 큰 패널을 만들었습니다.
: : 그런후에 패널의 여기저기에 동적인 콤포넌트 들을 배치하였습니다...
: : (여기 저기 있기때문에...)
: :
: : 스크롤 박스 안에 원하는 콤포넌트가 있는지 체크할수 있는 방법과
: : 없다면... 스크롤박스를 최소한 움직여서 원하는 콤포넌트를 스크롤 박스의
: : 귀퉁이에라도 보여주고 싶은데... 좋은방법이 있을까요?
: :
: :  
: :   ScrollBox1->VertScrollBar->Position=Button1->Left;
: :   ScrollBox1->HorzScrollBar ->Position=Button1->Left;
: :  
: :   수고하세요.

+ -

관련 글 리스트
54584 스크롤 박스 안에 원하는 콤포넌트가 있는지 체크할수 있는 방법을 알수 있나요? linuxman 1210 2008/09/17
54586     Re:스크롤 박스 안에 원하는 콤포넌트가 있는지 체크할수 있는 방법을 알수 있나요? 장성호 1290 2008/09/17
54587         Re:Re:스크롤 박스 안에 원하는 콤포넌트가 있는지 체크할수 있는 방법을 알수 있나요? linuxman 1258 2008/09/17
54590             Re:Re:Re:스크롤 박스 안에 원하는 콤포넌트가 있는지 체크할수 있는 방법을 알수 있나요? 장성호 1392 2008/09/18
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.