Q&A

  • count 관한 질문
delphi 프로그래밍 중 다음과 같은 의문점이 발생하였습니다.

<예 1>

if OpenDialog1.Execute then

begin

for i:=0 to OpenDialog1.Files.Count-1 do

begin

AddFile(OpenDialog1.Files[i]);

-> 위의 경우에 i=0일 경우 Count는 -1이 되므로 추가할 파일이 없는 것으로 이해됩니다.

<예 2>

그럼 다음과 같이 Printbutton.Enabled :=Listiew1.Items.Count>0 일 경우에는

0은 무엇 을 뜻 하는 걸까요? 0은 파일 하나, -1은 파일이 없음이라고 생각 하고 있는

데, 그것이 맞는 생각 인가요? 그대로 한다면 파일이 2개 있을 경우에 프린터버튼이

보인다는 의미로 생각되는데, 맞는 생각인가요?

*답변부탁드립니다.*





2  COMMENTS
  • Profile
    최은석 2000.09.18 20:07
    delpo wrote:

    > delphi 프로그래밍 중 다음과 같은 의문점이 발생하였습니다.

    > <예 1>

    > if OpenDialog1.Execute then

    > begin

    > for i:=0 to OpenDialog1.Files.Count-1 do

    > begin

    > AddFile(OpenDialog1.Files[i]);

    > -> 위의 경우에 i=0일 경우 Count는 -1이 되므로 추가할 파일이 없는 것으로 이해됩니다.

    > <예 2>

    > 그럼 다음과 같이 Printbutton.Enabled :=Listiew1.Items.Count>0 일 경우에는

    > 0은 무엇 을 뜻 하는 걸까요? 0은 파일 하나, -1은 파일이 없음이라고 생각 하고 있는

    > 데, 그것이 맞는 생각 인가요? 그대로 한다면 파일이 2개 있을 경우에 프린터버튼이

    > 보인다는 의미로 생각되는데, 맞는 생각인가요?

    > *답변부탁드립니다.*

    >

    >

    Printbutton.Enabled :=Listiew1.Items.Count>0

    이건... 리스트뷰의 아이템 숫자가 0보다 크면 버튼의 enabled 속성을 true. 로 한다는 것이지요

    파일이 1개 이상이면 버튼이 활성화 되고... 그렇지않으면 비활성화된다는 것이지요..





  • Profile
    최용일 2000.09.18 20:06
    안녕하세요. 델파이세상(http://www.freechal.com/delphiworld)의 최용일입니다.



    "위의 경우에 i=0일 경우 Count는 -1이 되므로"???



    Count는 i값에 따라서 변하지 않는데요. 뭔가 이해를 잘 못 하신것 같군요...



    델파이 컴포넌트들의 배열속성들은 거의 대부분 인덱스 0부터 시작합니다. 그러므로



    Count값이 10이라면 인덱스는 0부터 9까지의 값을 가집니다. 때문에 for문을 돌릴때



    1을 빼주는 겁니다.



    "Printbutton.Enabled :=Listiew1.Items.Count>0;"



    Count가 0보다 크다는 것은 아이템이 하나 이상 있다는 말이죠.



    ^^ 항상 즐코하세요.



    delpo wrote:

    > delphi 프로그래밍 중 다음과 같은 의문점이 발생하였습니다.

    > <예 1>

    > if OpenDialog1.Execute then

    > begin

    > for i:=0 to OpenDialog1.Files.Count-1 do

    > begin

    > AddFile(OpenDialog1.Files[i]);

    > -> 위의 경우에 i=0일 경우 Count는 -1이 되므로 추가할 파일이 없는 것으로 이해됩니다.

    > <예 2>

    > 그럼 다음과 같이 Printbutton.Enabled :=Listiew1.Items.Count>0 일 경우에는

    > 0은 무엇 을 뜻 하는 걸까요? 0은 파일 하나, -1은 파일이 없음이라고 생각 하고 있는

    > 데, 그것이 맞는 생각 인가요? 그대로 한다면 파일이 2개 있을 경우에 프린터버튼이

    > 보인다는 의미로 생각되는데, 맞는 생각인가요?

    > *답변부탁드립니다.*

    >

    >