Q&A

  • StringGrid....으~~~
아구....안녕들 하세요...



다름이 아니라



cell[0,0]에서 어떤 값을 입력하고 엔터를 치면



cell[0,1]로 이동하고 싶고, 거기서 또 어떤 값을 입력하고



엔터를 치면 역시 다음 셀로 이동하고 싶죠....그렇게 정해지지 않은



셀들에 대해 처리하고 싶은데,....



근데...ㅜㅜ



잘 안되네요...엉엉~



SendMessage()나 keybd_event()를 써도 잘 안되는데



어찌 해야 될까요....ㅠㅠ



많은 조언 부탁드립니다.

2  COMMENTS
  • Profile
    1999.06.09 19:43
    한 께서 말씀하시기를...

    > 아구....안녕들 하세요...

    >

    > 다름이 아니라

    >

    > cell[0,0]에서 어떤 값을 입력하고 엔터를 치면

    >

    > cell[0,1]로 이동하고 싶고, 거기서 또 어떤 값을 입력하고

    >

    > 엔터를 치면 역시 다음 셀로 이동하고 싶죠....그렇게 정해지지 않은

    >

    > 셀들에 대해 처리하고 싶은데,....

    >

    > 근데...ㅜㅜ

    >

    > 잘 안되네요...엉엉~

    >

    > SendMessage()나 keybd_event()를 써도 잘 안되는데

    >

    > 어찌 해야 될까요....ㅠㅠ

    >

    > 많은 조언 부탁드립니다.







    아구....



    자문자답이네요...헤헤



    그리고 최석기님이 올려주신게 더 좋네요...



    오늘 여기서 한수 배웁니다.



    If Key = #13 then

    begin

    SetForeGroundWindow(griSu.Handle);

    keybd_event(VK_RIGHT, 0, 0, 0);

    keybd_event(VK_RIGHT, 0, KEYEVENTF_KEYUP, 0);

    end;



    저는 이렇게 처리했었는데, 최석기님 쓰신게 더 남이 듭니다.



    그분께 다시 한번 고맙다는 말을 전해드리고 싶네요...



    넙죽~

  • Profile
    최석기 1999.06.09 18:06
    한 께서 말씀하시기를...

    > 아구....안녕들 하세요...

    >

    > 다름이 아니라

    >

    > cell[0,0]에서 어떤 값을 입력하고 엔터를 치면

    >

    > cell[0,1]로 이동하고 싶고, 거기서 또 어떤 값을 입력하고

    >

    > 엔터를 치면 역시 다음 셀로 이동하고 싶죠....그렇게 정해지지 않은

    >

    > 셀들에 대해 처리하고 싶은데,....

    >

    > 근데...ㅜㅜ

    >

    > 잘 안되네요...엉엉~

    >

    > SendMessage()나 keybd_event()를 써도 잘 안되는데

    >

    > 어찌 해야 될까요....ㅠㅠ

    >

    > 많은 조언 부탁드립니다.



    스트링그리드에서 셀간의 엔터키 이동이라면 다음과 같이 하면 될꺼 같은데요..



    procedure TForm1.StringGrid1KeyDown(Sender: TObject; var Key: Word;

    Shift: TShiftState);

    begin

    if key = VK_RETURN then begin

    key := 0;

    with TStringGrid(Sender) do begin

    if Col < (ColCount - 1) then

    Col := Col + 1

    else begin

    if (Row < RowCount - 1) then

    Row := Row + 1;

    Col := FixedCols;

    end;

    end;

    end;

    end;