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
[72846] Re:tcxgrid에서 컬럼을 DB에서 가져와 동적으로 생성하고싶은데 잘모르겠네요 도와주세요
정성훈.해미 [sage5nor] 4411 읽음    2015-07-09 14:16
cxGrid1DBTableView에 보면
ClearItems() 함수가 있습니다.
현재 모든 칼럼을 지워줍니다.

칼럼을 처음 추가할 때 아래의 코드를 넣으세요.

cxGrid1DBTableView1->ClearItems();

예)
#include "DateUtils.hpp"    //월별 마지막 날짜 구하는 함수용, DaysInMonth()


cxGrid1DBTableView1->ClearItems();  // 모두 지우기

for(int i=0; i<DaysInMonth(Now()); i++)    {
    TcxGridDBColumn* pDBColumn;
    pDBColumn = cxGrid1DBTableView1->CreateColumn();    // 칼럼 추가
    pDBColumn->Caption = IntToStr(i+1) + "일";
}

추신:
위 방법 보다는 무조건 31개 칼럼을 만들어 놓고
해당 월에 필요없는 날짜 칼럼만 숨기기하면 더 편합니다.
그러면 DB 쿼리를 하나로 가져갈 수 있습니다.




그리드그리드 님이 쓰신 글 :
:     cbYear->Properties->Items->Clear();  //--------------------------------------->>여기부터
:     cbYear->Properties->Alignment->Horz = taCenter;
:     DBModule->Query->SQL->Text =" SELECT  DISTINCT TO_CHAR(CONNECT_DATE, 'YYYY') AS YEAR   "
:                                 " FROM PERIOD                                     "
:                                 " ORDER BY YEAR DESC                                          ";
:     DBModule->Query->Open();
:     cbYear->Properties->BeginUpdate();
:     while (!DBModule->Query->Eof) {
:         AnsiString sVal = DBModule->Query->FieldByName("YEAR")->AsAnsiString;
:         cbYear->Properties->Items->Add(sVal);
:         cbYear->Properties->DropDownListStyle = lsFixedList;
:         DBModule->Query->Next();
:     }
:     cbYear->Properties->EndUpdate();
:     DBModule->Query->Close();
:     cbYear->ItemIndex = 0;    //------------------------------------------------->>여기까지
:
: 콤보박스의 항목은 이렇게 동적으로 가져왔는데요
:
: 컬럼은 도저히 모르겠네요.
:
: 예를 들어서 일별로 조회버튼을  클릭 하면
:
:         1일 2일 3일 4일 5일  ......................30일
: 집
: 회사
:
: 이렇게 나와야하는데요 월마다 일수가 30일인날도 있고 31일인 날도있잖아요 그래서
: 30일이 있는날은 30일까지만 컬럼이생성되고 31일은 또 31까지 생성되게하고싶구요
: DB에 날짜는 다 저장되어있습니다.
: 버튼을 누를때마다 계속 컬럼이 생기는게 아니라 누를떄마다 새로 그리고 더 늘어나지 않도록하고싶습니다
:
:
:
:
:

+ -

관련 글 리스트
72843 tcxgrid에서 컬럼을 DB에서 가져와 동적으로 생성하고싶은데 잘모르겠네요 도와주세요 그리드그리드 4209 2015/07/08
72846     Re:tcxgrid에서 컬럼을 DB에서 가져와 동적으로 생성하고싶은데 잘모르겠네요 도와주세요 정성훈.해미 4411 2015/07/09
72854         Re:Re: 감사합니다 많은도움되었습니다^^ 3809 2015/07/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.