Q&A

  • (모두들)꼭! 좀 도와주세요...
처음이라 많이 힘들어 합니다. 전혀 모르겠고..

우긴 질문도 여러번 하게 될지 모르겠지만..많이 도와주세요..<부탁.또 부탁>



1. tab키나 enter를 누르면 다음 Edit나 combobox로 이동하는 방법이 알고 싶고..

(다음 Edit나 Combobox로 넘어가는 순서를 바꿀는 방법도..)

2. 커서가 Edit에 들어갔을때 데이터를 전체블록을 씌워져서 바로바로 데이터를 입력할수 있는 방법을 알고 싶구요



3  COMMENTS
  • Profile
    이성훈 2000.08.04 06:18
    궁금한 이 wrote:

    > 처음이라 많이 힘들어 합니다. 전혀 모르겠고..

    > 우긴 질문도 여러번 하게 될지 모르겠지만..많이 도와주세요..<부탁.또 부탁>

    >

    > 1. tab키나 enter를 누르면 다음 Edit나 combobox로 이동하는 방법이 알고 싶고..

    > (다음 Edit나 Combobox로 넘어가는 순서를 바꿀는 방법도..)

    > 2. 커서가 Edit에 들어갔을때 데이터를 전체블록을 씌워져서 바로바로 데이터를 입력할수 있는 방법을 알고 싶구요

    >

    쉬운 방법이 있는데요

    edit1 이벤트에서 SetFocus를 쓰면 되거든요...



    소스도 있습니다.......

    procedure TForm2.e_noKeyDown(Sender: TObject; var Key: Word;

    Shift: TShiftState);

    begin

    if Key = vk_Escape then // 입력한 값이 Esc key 이면

    begin

    int_btn.SetFocus; //int_btn으로 커서 이동

    Exit;

    end;

    end;





    만약 입력 받을 key Enter 이면 vk_return으로 해주시면 되구요...

    아래의 질무은 자동적으로 해결될겁니다....

    즐코딩하세요....

  • Profile
    김명성 2000.08.04 23:09
    이성훈 wrote:

    > 궁금한 이 wrote:

    > > 처음이라 많이 힘들어 합니다. 전혀 모르겠고..

    > > 우긴 질문도 여러번 하게 될지 모르겠지만..많이 도와주세요..<부탁.또 부탁>

    > >

    > > 1. tab키나 enter를 누르면 다음 Edit나 combobox로 이동하는 방법이 알고 싶고..

    > > (다음 Edit나 Combobox로 넘어가는 순서를 바꿀는 방법도..)

    > > 2. 커서가 Edit에 들어갔을때 데이터를 전체블록을 씌워져서 바로바로 데이터를 입력할수 있는 방법을 알고 싶구요

    > >

    > 쉬운 방법이 있는데요

    > edit1 이벤트에서 SetFocus를 쓰면 되거든요...

    >

    > 소스도 있습니다.......

    > procedure TForm2.e_noKeyDown(Sender: TObject; var Key: Word;

    > Shift: TShiftState);

    > begin

    > if Key = vk_Escape then // 입력한 값이 Esc key 이면

    > begin

    > int_btn.SetFocus; //int_btn으로 커서 이동

    > Exit;

    > end;

    > end;

    >

    >

    > 만약 입력 받을 key Enter 이면 vk_return으로 해주시면 되구요...

    > 아래의 질무은 자동적으로 해결될겁니다....

    > 즐코딩하세요....



    이성훈님께서 하신 것도 맞는데요. 각 Edit마다 소스를 입력해야 하는 점이 있다고

    생각이 됩니다.

    아래와 같이 하면 코딩한번으로 모든 Edit에 적용이 가능합니다.

    procedure TForm2.e_noKeyPress(Sender: TObject; var Key: Char);

    begin

    if Key = #13 then // 입력한 값이 Enter key 이면 Enter key 값이 #13입니다

    begin

    Key := #0 // 키값을 초기화 합니다. 계속 Enter 키값으로 먹기 때문에 키값을 없애줘야합니다.

    SelectNext(Sender as TWinControl, True, True); // 다음으로 이동합니다.

    end;

    end;



    위의 코드는 Tab 순서에 의해 움직입니다. 메뉴의 Tab Order에서 탭의 순서를 정해

    줘야 하지요...^^ 특별하게 순서에 의하여 커서가 이동하게 하지 않으려면 이성훈님

    께서 하신대로 코딩을 하시면 되지요..

    그럼 즐코하십시오

  • Profile
    궁금한 이 2000.08.05 04:25
    답장 정말 감사 합니다.

    이렇게 질물을 해보긴 처음 입니다.

    질문하면 답장들이 올까 걱정도 좀 했거든요..

    사실. 모르는 사람이야 애따는 일이지만 아는사람이야 아쉬울게 없는거 아닌가요..

    그런데 이렇게 신경써서 대답을... 제가 생각했던 생각이 옳은게 아니구나. 다시금 알았습니다.

    앞으로 자주 질문을 할 것 같은데..

    계속적으로 관심가져주세요.(^ ^)

    여름 잘 보내세요..이번주는 날씨가 많이 더울거레요..