자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Firemonkey listview를 DB와 livebind시 바인딩된 자료변화...
2017.11.13 03:45
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 바쁜 와중에도 답변을 주시는 분들께 감사 댓글 필수
-----------------------------------------------------------------------------------------------
도쿄 10.2버전으로
listview와 db를 LiveBinding시 dynamicappearance를 쓰고 있는데요
item에 text1 부터 text5정도 있습니다.
문제는 바인딩시 text의 font color가 고정이 되어 버린다는 것입니다..
db자료의 특성에 따라 어떤 text는 font color를 바꾸어야 하는데요...
예를 들어서 수량이 100이상인 자료의 color의 색을 red로 해야 하는거죠.
그래서 table의 onautosroll events에서 값을 체크하여 실제로 binding이
일어날때 그 자료의 수량이 100 이 넘은 경우 text3의 color를 변하게 할려고
테스트는 간단하게 변수 i 에다 측정을 해보았느데 갯수가 i의 값이 맞더라고요.
그런데 그 자료가 있는 위치는 찾았는데 color를 못바꾸어 여러가지 방법으로
검색했는데 자료를 못찾았네요....
읽어 주셔서 감사하고요 좋은 방법이 있으면 조언 부탁합니다.
아! 참고로
procedure TSnagslviewfm.clientdataset1AfterScroll(DataSet: TDataSet);
var
LItem: TListViewItem;
begin
Listview1.BeginUpdate;
LItem := Listview1.Items.Add;
if clientdataset1.fieldbyname('sssu').Asinteger >=100 then begin
inc(ii);
TListItemText(Listview1.Items.Add.Objects.FindDrawable('Text3')).TextColor := TAlphaColorRec.Red;
end else begin
inc(jj);
TListItemText(LItem.Objects.FindDrawable('Text3')).TextColor := TAlphaColorRec.Blue;
end;
Listview1.EndUpdate;
end;
이 경우는 빈 item이 생기기도 하고요 색도 안변하네요...
수고하세요...꾸벅
Firemonkey listview를 DB와 livebind시 바인딩된 자료변화...
2017.11.13 03:45
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 바쁜 와중에도 답변을 주시는 분들께 감사 댓글 필수
-----------------------------------------------------------------------------------------------
도쿄 10.2버전으로
listview와 db를 LiveBinding시 dynamicappearance를 쓰고 있는데요
item에 text1 부터 text5정도 있습니다.
문제는 바인딩시 text의 font color가 고정이 되어 버린다는 것입니다..
db자료의 특성에 따라 어떤 text는 font color를 바꾸어야 하는데요...
예를 들어서 수량이 100이상인 자료의 color의 색을 red로 해야 하는거죠.
그래서 table의 onautosroll events에서 값을 체크하여 실제로 binding이
일어날때 그 자료의 수량이 100 이 넘은 경우 text3의 color를 변하게 할려고
테스트는 간단하게 변수 i 에다 측정을 해보았느데 갯수가 i의 값이 맞더라고요.
그런데 그 자료가 있는 위치는 찾았는데 color를 못바꾸어 여러가지 방법으로
검색했는데 자료를 못찾았네요....
읽어 주셔서 감사하고요 좋은 방법이 있으면 조언 부탁합니다.
아! 참고로
procedure TSnagslviewfm.clientdataset1AfterScroll(DataSet: TDataSet);
var
LItem: TListViewItem;
begin
Listview1.BeginUpdate;
LItem := Listview1.Items.Add;
if clientdataset1.fieldbyname('sssu').Asinteger >=100 then begin
inc(ii);
TListItemText(Listview1.Items.Add.Objects.FindDrawable('Text3')).TextColor := TAlphaColorRec.Red;
end else begin
inc(jj);
TListItemText(LItem.Objects.FindDrawable('Text3')).TextColor := TAlphaColorRec.Blue;
end;
Listview1.EndUpdate;
end;
다음글을 참고하시면 좋겠습니다.
본문과 하단의 참고글에 기록된 샘플 프로젝트도 참고해보세요.
TListView 행별로 배경색 설정 및 글꼴변경하기
http://tech.devgear.co.kr/delphi_news/436096