Q&A

  • 알고리즘 문제입니다
트리뷰에서 이런 루틴을 넣었는데요 결과가 제가 생각한대로 안나오네요
제가 생각한 결과는 트리뷰의 이미지 인덱스를 'Field'필드값이 T인 부분은 이미지 인덱스를 1로, 그외의 값이면 0을 집어 넣는 건데요
이상하게 엉뚱한 결과가 나옵니다 어디가 잘못된 걸까요?
전체 소스가 필요하면 전체소스도 올리겠습니다

          Query1.First;
          for indexcount := 0 to TreeviewItemsCount-1 do begin
              FieldName:=Query1.FieldByName('Field').AsString;
              if FieldName='T' then
              Treeview1.Items[indexcount].ImageIndex:=1
              else Treeview1.Items[indexcount].ImageIndex:=0;
              Query1.Next;
          end;

그리고 1번 이미지로 나오는 것도 선택하면 0번 이미지로 바뀌네요
이것도 같이 알려주세요
2  COMMENTS
  • Profile
    윤수아 2002.02.14 23:49
    이렇게 고쳐보세요...

              Query1.First;
              for indexcount := 0 to TreeviewItemsCount-1 do begin
                  FieldName:=Query1.FieldByName('Field').AsString;
                  if FieldName[1]='T' then
                  begin
                    Treeview1.Items[indexcount].ImageIndex:=1;
                    Treeview1.Items[indexcount].SelectedIndex:=1;
                  end
                  else
                  begin
                     Treeview1.Items[indexcount].ImageIndex:=0;
                     Treeview1.Items[indexcount].SelectedIndex:=0;
                  end;
                  Query1.Next;
              end;


  • Profile
    최용일 2002.02.14 13:37
    안녕하세요. 최용일입니다.

    트리뷰에서 선택된 노드의 이미지는 TTreeNode.SelectedIndex속성을 사용합니다. 기본값은 0번이구요... ImageIndex뿐만아니라 SelectedIndex도 맞추어 주세요...

    ^^ 항상 즐코하세요...