Q&A

  • edit 에관하여..
반갑습니다.
몇가지 고충이 있어 이렇게 질문드립니다.
만약 edit창이 1..100까지 있다면
일일이 Edit1.text := '1111';..Edit2.text := '0101';....이런식으로 값을 넣어야할때
for문을써서 edit1..100까지 한번에 값을 넣을수 있는 간단한 방법이 없을까요?
고수님들의 조언을구합니다.
4  COMMENTS
  • Profile
    프리땐서 2005.10.14 21:15
    무슨 함수가 있을것 같은데 잘 모르겠습니다.
    그래서 아래와 같이 코딩해 보았으니 응용해 보시기 바랍니다.
    <!--CodeS-->
    var
      i, j, k: integer;
      AAA : array [1..100] of integer;
    begin
      j:=0;
      for i:=1 to 100 do
      begin
        for j:=i downto 2 do
          AAA[j]:=AAA[j-1];

        k:=k+1;
        AAA[1]:=k; ->이전답변 여기 틀려서 수정합니다.
      end;
    end;

    위 코드에서 아래부분은 함수를 하나 만들어 두면 좋을것 같네요.

        for j:=i downto 2 do
          AAA[j]:=AAA[j-1];
    <!--CodeE-->

  • Profile
    프리땐서 2005.10.14 00:02
    아래 코드를 응용해 보세요.
    이 경우에도 입력되어야하는 값이 어떤 규칙이 있어야만 가능합니다.
    <!--CodeS-->
    var
      i: Integer;
    begin
      for i:=1 to 100 do
        (FindComponent('Edit'+IntToStr(i)) as TEDit).Text:='Text'+IntToStr(i);
    end;
    <!--CodeE-->
    위와같이 하면 Edit1에는 'Text1'이 ...... Edit100 에는 'Text100' 이 들어가겠지요.

  • Profile
    박진규 2005.10.14 18:37
    답변해 주셔서 감사합니다.
    내친김에 하나만 더여쭤봐도 될런지요...죄송..
    1차원배열을 100개정도 만들어놓고 첫번째방에 1111이라는 데이터를 집어놓고
    다시 첫번째방에 2222라는 데이터를 넣어면 첫번재 방에2222라는 값이들어가고 두번째방에는1111이
    자동으로 넘어갈수 있는 방법이 있나 궁금합니다. 이걸 워드쉬프트 라고도 하든데요..
    원체 초보라서 ..도움좀 부탁합니다.....


  • Profile
    김현학 2005.10.14 20:04
    저도 초보라서
    잘은 모르지만 어거지로(제생각)
    참고 해 보세요

    <!--CodeS-->
    var
     i, k, s: Integer;
    j     : array [1..100] of Integer;
    begin
      for i:=100 to 1 do down
           j[i] := i;
      end;

      k := j[1]
      s := 0;
      for i:=100 to 1 do down
          s := s + 1;
           j[s] := j[i];
      end;
      j[100] := k;

    <!--CodeE-->