Q&A

  • Page Control에서 포커스 문제입니다... 답변 많이 부탁합니다.
안녕하세요...

페이지 컨트롤에서 페이지의 onchange이벤트가 발생할때의 포커스가
이전의 위치로 가게하려면 어떻게 하여야 하나여?

예를들면
TabSheet1에는 Edit1, Edit2가 있고,
TabSheet2에는 Edit11,Edit12가 있습니다.

먼저 TabSheet1에서 포커스를 Edit2로 가서 입력하고, TabSheet2로 이동하여
포커스를 Edit12에 위치하고나서, 다시 TabSheet1로 이동하면
  포커스가 Edit1에 위치하여 있습니다.

이것을 전에 입력한 Edit2에 위치하게 하는 방법이 있는지요?

참고로 TabOrder는 Edit1(0), Edit2(1)입니다.
         델파이는 버젼 6입니다..

답변 좀 부탁드립니다.

그럼 수고하십시오...
1  COMMENTS
  • Profile
    nilriri™ 2003.12.24 20:38

    샬롬~~

    procedure TForm1.PageControl1Change(Sender: TObject);
    var
       i : integer;
    begin
       //PageControl1.ActivePage.Tag := 0;
       with pagecontrol1.ActivePage do
       begin
          for i := 0 to ControlCount - 1 do
          begin
             if TEdit(Controls[i]).TabOrder = Tag then
             begin
                Self.FocusControl(TWinControl(Controls[i]));
                break;
             end;
          end;
       end;
    end;

    procedure TForm1.PageControl1Changing(Sender: TObject;
      var AllowChange: Boolean);
    begin
       PageControl1.ActivePage.Tag := TEdit(self.ActiveControl).TabOrder;
    end;


    ㅋㅋㅋ 넘 복잡한강??

    더 간단하고 좋은 방법이 있을수도..^^

    즐프하시고..메리 크리스마스~