Q&A

  • string grid에서 숫자 입력받는 방법
string grid에서 사용자가 직접 type를 쳐서 문자나 숫자를 입력받을
수 있는 방법 아시는 분 조언좀 부탁합니다.
예를들어  

번호       이름          성격     나이     어쩌구 저쩌구


이중에서 나이 열은 key board로 입력받으려구요
string grid로 안되면 다른것으로라도.....



감사
1  COMMENTS
  • Profile
    이성남 2002.05.03 04:47




    저도 검색하다 우연히 보게되어 아는대로 답변을 드릴까 합니다.

    근데 사실 너무 기초적인 질문이네요.  검색먼저 하시지.... ^^

    실행시 직접 입력이 가능하길 원하시는 거 맞죠.
    우선 string grid 에 문자를 입력하는 방법은 string grid의 properties에 보면 option있는데 이중 goEditing을 True로 하시면 직접입력이 가능해 집니다.

    글구 숫자만 입력하길 원하시면 현재 셀이 '나이'에 해당하는 column인지 먼저 체크한후 '나이' column이면 숫자만 입력하게 하십 될겁니다.

    폼의 string grid의 onkeypress 이벤트 에다 아래와 같이 코딩하심됩니다.

    * string grid 명이 stg_list 이라고 하면

    procedure Tfm_main.stg_listKeyPress(Sender: TObject; var Key: Char);
    begin
        if stg_list.Col = 3 then
            if (key < #48) or (key > #57) then key:= #0;
    end;

    위와 같은 방식으로 하면 될겁니다. 물론 이외에도 여러 방법이 있겠지만....
    참고로 '나이' 컬럼이 4번째라는 전재하에서 컬럼이 커서가 3번에 있는지 체크한 겁니다.
    그리드의 컬럼과 행번호는 0부터 시작되는건 아시죠.  ^^


    그럼 2000......