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
[25355] [답변] TStringGrid의 Rows와 Cols....
정성훈.해미 [sage5nor] 983 읽음    2003-04-25 12:28
TStringGrid의 Rows와 Cols은 TStrings 타입이네요.

Memo의 Lines와 같은 타입입니다.

즉,

StringGrid1->Rows[0] = Memo1->Lines;

이렇게하면 그리드 맨 윗열에 메모의 내용이 순서대로 들어 갈것입니다.

메모의 1열이 그리드의 1칸에 들어감.

예)

[메모]
1
2
3
4

[그리드]
-----------------------------------
|   1   |   2   |   3   |   4   |
-----------------------------------

이렇게 들어 가겠네요.



그리고,

StringGrid1->Cols[0] = Memo1->Lines;

이렇게하면 그리드 맨 왼쪽행에 메모의 내용이 순서대로 들어 갈것입니다.

예)

[메모]
1
2
3
4

[그리드]
-----------------------------------
|   1   |       |       |       |
-----------------------------------
|   2   |       |       |       |
-----------------------------------
|   3   |       |       |       |
-----------------------------------
|   4   |       |       |       |
-----------------------------------

이렇게 들어 가겠습니다.


그런데 님이 원하는 것 하고는 조금 다르죠??

조금 만들어 봤습니다.



TStringList *CalString  = new TStringList();

//그리드에 열을 만든다..타이틀 1줄 + 메모 열수
StringGrig1->RowsCount = Memo1->Lines->Count+1;

//타이틀 열은 [0] 열...따라서..[1]열부터 입력
for(int i=1; i<=Memo1->Lines->Count; i++)
{
    //계산
    //예)
    // CalString->Clear();
    // for(int j=0; j<12; j++)
    // {
    //     CalString->Add(Memo1->Lines->Strings[i-1].SubString(j*3+1,3));
    // }
   
    //열에 입력
    StringGrig1->Rows[i] = CalString;
}

delete CalString;


이런식으로 하시면 되겠네요.

단, 위의 CalString은

메모의 1열 전체가 들어가면 안될테니..

1열을 님이 원하는 대로 나누는 일은 님께서 한번 해보세요.




손영주 님이 쓰신 글 :
: 비가 많이 오네여...
:
: 지금 파일 저장과 오픈 기능을 구현을 하고 있는데, 스트링 그리드에 있는 내용을 그대로 파일로 저장을 하고 다시 파일 오픈을 하면 스트링 그리드에 그대로 나타낼려고 하는데 저장은 했는데 오픈이 난감하네요..
:
: 예를 들어 파일에 저장되어 있는 값이
:   6  5  4  2  1 -1 -2 -4 -5 -6 -7 -9
:   8  7  6  4  3  1  0 -1 -2 -3 -4 -6
:   9  8  7  5  4  2  1  0 -1 -2 -4 -7
:  10  9  8  6  4  2  1  0 -1 -2 -4 -7
:  13 12 11  7  5  3  0 -2 -3 -5 -7-11
:  13 12 10  6  3  2 -1 -2 -3 -5 -7-10
:  12 11 10  6  4  2 -2 -4 -6 -8-10-13
:  11 10  9  6  3  2 -2 -3 -4 -6 -8-12
:  13 12 11  7  5  3 -1 -3 -4 -6 -8-12
:  10  9  8  5  3  1 -2 -3 -5 -6 -8-11
:   9  8  7  5  2  0 -2 -3 -5 -7 -9-12
:  10  9  8  6  4  2 -1 -3 -5 -6 -9-12
:  11 10  8  5  3  1 -2 -4 -5 -7-10-14
:  15 14 12  7  5  2 -3 -5 -8-10-14-18
:  16 15 11  7  2 -1 -5 -7-10-13-17-22
:  12 11  7  3 -2 -6-10-14-17-20-23-28
:
: 이렇게 되어 있다면,이걸 메모 컴포넌트로 똑같이 불러들였습니다.
: Memo1->Lines->LoadFromFile(OpenDialog1->Files->Strings[0]); 이렇게요...
:
: 근데 이 메모에서 스트링 그리드로 다시 나타내기가 난감하네요..아직 워낙 초보라서..
: 게시판을 검색을 계속 했는데도 원하는 답변을 못찾아서 이렇게 글을 남깁니다...
:
: 고수님들의 도움 부탁드리겠습니다..꾸벅..

+ -

관련 글 리스트
25354 스트링그리드와 파일오픈에 관한 질문입니다... 손영주 609 2003/04/25
25355     [답변] TStringGrid의 Rows와 Cols.... 정성훈.해미 983 2003/04/25
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.