2009.06.23 09:57
DataGrid는 다음과 같이 간편하게 표형식의 데이터를 화면에 출력할 수 있습니다.


이런 DataGrid은 위의 코드에서 보실 수 있듯, DataGridColumn 을 이용하여 화면에 각 열을 생성하여 보여지게 됩니다. 데이터가 아무리 많이 들어오더라도 DataGridColumn이 지정되어 있지 않으면 출력되지 않죠. DataGridColumn은 가장 기본적으로 headerText, dataField 속성을 필요로 합니다.

headerText : DataGrid의 헤더(Header)에 출력될 문자열. 값이 지정되지 않을 경우 dataField의 값으로 사용합니다.
dataField : DataGrid에 입력된 데이터(DataProvider)에서 해당 열에 출력될 데이터를 지정.

위의 코드와 같이 MXML로 정의된 DataGridColumn의 정보(headerText 나 dataField, 혹은 넓이정보 등)를 변경하고자 한다면 어떻게 해야할까요? 방법은 여러가지일 수 있으나, 크게 본다면 1. DataGridColumn에 ID를 지정하여 해당 ID로 접근하거나 2. DataGrid의 columns 속성을 이용하여 DataGridColumn 모음을 받아와 처리하는 방법이 있을 수 있겠습니다.
이 포스트에서는 2번째 방법인 columns속성을 이용하는 것을 알아보도록 하겠습니다.

columns 속성은 DataGrid의 화면에 출력될 수 있는 하나 이상의 DataGridColumn들을 모아놓은 배열입니다. 이 배열에 담겨있는 DataGridColumn들을 수정하면 DataGrid의 모습도 바뀌게 된다는 것이죠.  특정 컬럼을 변경하고자 하면 이 배열의 해당 DataGridColumn에 대해 변경을 하면 반영이 되게 됩니다.

만약 위의 MXML처럼 ActionScript로 DataGridColumn을 설정하려 한다면 columns 속성에 직접 다음과 같이 DataGridColumn을 넣어주면 됩니다.

makeDataGridColumn 이라는 DataGridColumn 객체를 반환하는 메소드를 이용하여 DataGrid의  columns 속성에 원하는 DataGridColumn을 배열로 담아 넣어주게 되면 처음에 보셨던 MXML에서 DataGridColumn을 지정하는 것과 같이 처리할 수 있게 되죠.

마지막으로 원하는 컬럼의 headerText 를 변경하는 예제를 만들어보고 이 포스트를 끝내도록 하겠습니다.
우선 원하는 컬럼을 선택하는 용도로 사용할 ComboBox를 생성 후, 컬럼에 대한 정보를 columns 속성을 이용하여 ComboBox에 넣도록 하겠습니다.


거기에 TextInput 과 Button을 생성하여 변경하고자 하는 문자열을 입력받고 동작할 수 있게 changeLabel 메소드를 추가합니다.


완성된 코드 및 SWF 파일입니다. ;)


좋은 하루 보내세요~ ;)
신고
Favicon of http://dbilove.com/tt BlogIcon 블랜즈 | 2009.06.23 14:07 신고 | PERMALINK | EDIT/DEL | REPLY
항상.. Flex Component에서 많이 배웠는데.. 직접 트랙백도 해주시고..^^
감사합니다..^^ 덕분에 좋은 기능 알게 되었습니다...
Favicon of http://blog.flashplatform.kr BlogIcon 검쉰 | 2009.06.23 14:13 신고 | PERMALINK | EDIT/DEL
덧글 감사합니다 ;)
좋은 하루 되세요!
네오랑 | 2009.06.23 18:06 신고 | PERMALINK | EDIT/DEL | REPLY
오~~~감사합니다~~~ID 로 접근했었지만, 뭔가 찜찜한 기분이 들었었는데...
속이 뚫리는 기분이네요~~감사합니다...
앞으로도 자주 오겠습니다...잘 부탁드립니다~~
Favicon of http://blog.flashplatform.kr BlogIcon 검쉰 | 2009.06.24 11:23 신고 | PERMALINK | EDIT/DEL
ID로 접근하는 것도 하나의 방법입니다만,
동적으로 생성되었을 때는 곤란하니까 해당 객체에서 원하는 것들을 받아내는 식으로 접근하시면 편리하실 겁니다. ;)
Favicon of http://blog.jidolstar.com BlogIcon 지돌스타 | 2009.06.24 07:38 신고 | PERMALINK | EDIT/DEL | REPLY
아~ 멋쩌라~ 저런 방법이~
Favicon of http://blog.flashplatform.kr BlogIcon 검쉰 | 2009.06.24 11:24 신고 | PERMALINK | EDIT/DEL
ㅎㅎ 형님 ㅋㅋ
Favicon of http://adnaru.com BlogIcon 희희덕덕 | 2009.06.25 14:07 신고 | PERMALINK | EDIT/DEL | REPLY
우와 정말 멋진정보네요~
재밌게 잘 읽고갑니다.
감사합니다~ ㅋㅋ 조만간 뵈어야죠!
Favicon of http://blog.flashplatform.kr BlogIcon 검쉰 | 2009.06.26 00:11 신고 | PERMALINK | EDIT/DEL
네~ 다음주에 뵈어요~ ;)
Favicon of http://blackiz.tistory.com BlogIcon Blackiz | 2009.07.02 15:48 신고 | PERMALINK | EDIT/DEL | REPLY
헛, 어느새 사진이 바뀌셨네요. ㅎㅎ
이번에 캠프에서 못뵈서 아쉽습니다. ㅋ
토요일에 !!
Favicon of http://blog.flashplatform.kr BlogIcon 검쉰 | 2009.07.02 18:11 신고 | PERMALINK | EDIT/DEL
저도 못가서 너무 아쉽다는.. ㅜㅜ
남석이 | 2009.07.15 05:16 신고 | PERMALINK | EDIT/DEL | REPLY
어떤 브라우져를 쓰시는지... 자동으로 안티엘리어싱처리가 되는 건지.. 가독성이 떨어지네요. 전 크롬과 익스6를 쓰고 있습니다.
Favicon of http://blog.flashplatform.kr BlogIcon 검쉰 | 2009.07.15 09:56 신고 | PERMALINK | EDIT/DEL
파폭을 쓰고 있습니다.
다른 브라우저를 거의 안써서 테스트를 못해봤네요.
한번 테스트해보겠습니다.

혹 ClearType 설정되어있으신지요?
기본폰트로 '맑은 고딕'을 쓰고 있어서 ClearType 설정되어 있지않으시면 이쁘게 안보이십니다 ^^;
네오랑 | 2009.07.20 18:06 신고 | PERMALINK | EDIT/DEL | REPLY
안녕하세요??
질문을 어디에 해야할지 몰라서 여기에 글을 남깁니다..

웹에서 경로설정을 위해 Directory 창을 띄우고 선택하게 하고 싶은데요...
어떻게 하면 좋을지 몰라서 질문 올립니다.

웹에서는 보안 정책때문에 flash.filesystem 패키지를 사용못한다고 하더라구요..
방법을 찾고 있는데, 잘 검색이 않되서 이렇게 염치불구하고 여쭤봅니다..

방법이 뭐가 있을까요?? 답변 부탁드립니다..

그럼, 즐거운 하루보내세요~
Favicon of http://blog.flashplatform.kr BlogIcon 검쉰 | 2009.07.22 18:30 신고 | PERMALINK | EDIT/DEL
폴더선택창은 안되는 것으로 알고 있습니다. 저도 잘 모르겠네요 ^^;;
도움이 못되어서 죄송합니다.
알려주세요 ! | 2014.11.10 16:17 | PERMALINK | EDIT/DEL | REPLY
관리자의 승인을 기다리고 있는 댓글입니다
- 덧글 좀..(굽신굽신) : 장문의 덧글은 트랙백을 이용해주세요 ;^)
Name
Password
Homepage
Secret

티스토리 툴바