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
[24710] [질문] About "TStringGrid"의 스크롤바는...
4GW [rsaint] 796 읽음    2003-03-13 13:35
제가 dll에 사용할 폼을 만들었는데요.
PageControl은 폼디자인 시에 pgcPage라는 이름으로 이미 만들었구요.
그위에 TabSheet를 동적생성하고 그 위에 다시 StringGrid를 동적생성했습니다.
그리고 나서 StringGrid에 column이나 row를 하나씩 추가해서 여러개(충분하게)를 만들었는데
스크롤바가 생기지 않습니다.
대체 어찌된 일일까요?
예전에 실행파일로 만든게 있어서 소스를 그대로 긁어썼는데
예전 실행파일에서는 스크롤바가 생기구요. 새로 만든 dll에서는 스크롤바가 안생깁니다.

아래는 관련 소스입니다.

BOOL TMyReports::AddPage(AnsiString title){
   TTabSheet *sht = NULL;
   TStringGrid *sg = NULL;

   // tabsheet 생성
   sht = new TTabSheet(this);
   sht->PageControl = pgcPage;
   sht->Caption = title;

   sg = new TStringGrid(sht);
   sg->Parent = sht;
   sg->Align = alClient;
   sg->DefaultRowHeight = 17;
   sg->ScrollBars = ssBoth;
   sg->RowCount = 1;
   sg->ColCount = 1;

   m_strgrid[m_NumPage] = sg; // m_strgrid는 전역변수
   m_sheet[m_NumPage] = sht;  // m_sheet도 전역변수

   m_NumPage++; // 이것도 전역변수
   return TRUE;
}
//---------------------------------------------------------------------------
BOOL TFGReports::AddCol(int pageID, const char* title){
   if (pageID < 0 || pageID >= m_NumPage) return FALSE;
   if (strlen(title) < 1) return FALSE;

   TStringGrid *sg = m_strgrid[pageID];
   int numCol = (sg->ColCount)++;
   if (sg->ColCount == 2){
      sg->FixedCols = 1;
      sg->Cells[0][0] = "No.";
   }
   sg->Cells[numCol][0] = title;

   return TRUE;
}
//---------------------------------------------------------------------------
BOOL TFGReports::AddRow(int pageID){
   if (pageID < 0 || pageID >= m_NumPage) return FALSE;

   TStringGrid *sg = m_strgrid[pageID];
   int numRow = (sg->RowCount)++;
   if (sg->RowCount == 2){
      sg->FixedRows = 1;
      sg->Cells[0][0] = "No.";
   }

   sg->Cells[0][numRow] = numRow;
   sg->Row = numRow;

   return TRUE;
}

+ -

관련 글 리스트
24710 [질문] About "TStringGrid"의 스크롤바는... 4GW 796 2003/03/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.