Q&A

  • richedit 를 이용한 메모장에서 커서위치제어
안녕하세요 고수님들..



하나를 해결하면..또..막히고.막히고..이게..초보의..어려움인가.봅니다.



질문은..제목 그대로..어떤.이벤트를 주면..커서가..특정..위치로.



가는..법을..알고..싶습니다...



항상..질문만..하는군요..저도..언젠쯤에야..질문에..답변을.쓸정도의..



실력이.될런지...



아무튼.고수님들의..조언..부탁드립니다...



꾸벅



1  COMMENTS
  • Profile
    최용일 2000.02.20 14:25
    김성훈 wrote:

    > 안녕하세요 고수님들..

    >

    > 하나를 해결하면..또..막히고.막히고..이게..초보의..어려움인가.봅니다.

    >

    > 질문은..제목 그대로..어떤.이벤트를 주면..커서가..특정..위치로.

    >

    > 가는..법을..알고..싶습니다...

    >

    > 항상..질문만..하는군요..저도..언젠쯤에야..질문에..답변을.쓸정도의..

    >

    > 실력이.될런지...

    >

    > 아무튼.고수님들의..조언..부탁드립니다...

    >

    > 꾸벅

    >



    Window API 함수중 SetCaretPos 함수를 이용하면 됩니다...

    BOOL SetCaretPos(

    int X, // horizontal position

    int Y // vertical position );



    procedure ChangeCaretPos(X, Y: Integer);

    begin

    // SetCaretPos에서 X와 Y는 문자단위가 아니라 픽셀 단위입니다...

    // 그러므로 제대로 캐럿을 옮기기 위해서는 문자들의 폭과 길이를 계산해주어야함니다.

    SetCaretPos(X*CharHeight, Y*CharWidth);

    end;



    참조: Caret 관련함수들



    CreateCaret 새로운 캐럿을 생성한다.

    DestroyCaret 캐럿을 제거한다.

    GetCaretBlinkTime 캐럿의 깜밖임시간을 구한다.

    GetCaretPos 캐럿의 위치를 구한다.(RichEdit에 구현되어 있다.)

    HideCaret 캐럿을 숨긴다.

    SetCaretBlinkTime 캐럿의 깜밖임시간을 설정한다.

    SetCaretPos 캐럿의 위치를 변경한다.

    ShowCaret 캐럿을 보이게 한다.