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
[57126] Re:Re:[초보]리스트 박스 질문입니다.
일월영측 [kimysh] 991 읽음    2009-06-05 10:41
도움 감사합니다..

어케저케해서 잘 해결했습니다 ㅋㅋ

공란을 몇줄더 추가해서 제가 보고자 하는 라인을 가운데로 옮길수가 있더라구요 ~^^


장성호 님이 쓰신 글 :
: 왕꼼수이지만
: 다음과 같은 식으로 하니.. ListBox의 가운데에 원하는 Item이 오네요..
:
:
: void __fastcall TForm1::Button3Click(TObject *Sender)
: {
:    int cnt=ListBox1->ClientHeight / ListBox1->ItemHeight;
:    ListBox1->ItemIndex=50+cnt/2;
:    ListBox1->ItemIndex=50;
: }
: //---------------------------------------------------------------------------
: 

:
: 위코드는 50번째 Item을 Listbox의 세로로 가운데 쯤에 오도록 한것인데..
:
: 문제점은 좀 있습니다.
:     * ListBox의 Item의 갯수가 ( SelectIndex + 화면ItemCount /2 ) 보다 작을때..
:     * SelectIndex가 (화면ItemCount /2 ) 보다 작을때 등..
:
:
: 그럼..
:
:
: 일월영측 님이 쓰신 글 :
: : m_fpDoing = fopen(szInfo,"r+");
: : // nLine는 파일안에 쓰여져 있는 전체 라인수를 의미합니다.
: : for(int i=0; i<nLine; i++)
: :         {
: :             fgets(szInfo, 255,m_fpDoing);                       // 파일 안의 라인 데이터를 얻어오는데 사용
: :             sprintf(szFinal,"No.%04d %s",i,szInfo);
: :             listDoFileInfo->Items->Add(szFinal);
: :         }
: :         fclose(m_fpDoing)
: : 이렇게 리스트 박스에 파일의 내용을 추가를 합니다.
: :
: : 그 후
: : listDoFileInfo->ItemIndex = 100;
: :         listDoFileInfo->SetFocus();
: :
: : 이렇게 소스를 작성하면, 현재 리스트 박스에 100번째 줄에 위치한 곳으로 포커스가 이동하면서
: : 화면도 그쪽으로 이동하게 되는데 리스트 박스 맨 밑부분에 표시가 됩니다.
: :
: : 이 위치를 리스트 박스 가운데로 옮기는 방법이 없을까요??

+ -

관련 글 리스트
57079 [초보]리스트 박스 질문입니다. 일월영측 788 2009/06/02
57094     Re:[초보]리스트 박스 질문입니다. 장성호 983 2009/06/02
57126         Re:Re:[초보]리스트 박스 질문입니다. 일월영측 991 2009/06/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.