안녕하세요.. 델파이 초보입니다..
PageControl에서 Page변경할때..
PageControl1.ActivePage := TabSheet1;
이러한 방법을 사용합니다.
하지만, 같은 페이지에서 계속 Tab Key를 누르면.. 같은페이지 안에서만 Tab Order가 먹고, 다음페이지로 넘어가지 않습니다.
현재 Page의 끝 Component(Edit이나 Memo)에서 Tab을 누르면, 자동으로 다음페이지로 넘어가게 할 수 있는지 알고 싶습니다.
그리고, Page의 처음 Component(Edit이나 Memo)에서 Shift+Tab을 누르면, 이전 페이지로 자동으로 넘어가게 하고 싶습니다.
처음에는 마지막 Componet의 Exit Event에
PageControl1.ActivePage := TabSheet2;
로 처리했더니.. 마우스를 사용했을때 문제가 발생하고, 또 마지막 Component가 Visible:= false가 되는경우,, 각각의 경우수 마다 Event 코딩을 하기가 싶지 않았습니다.
여러 방법으로 시행착오를 격고 있는데.. 방법이 마땅치 않습니다.
지금은 PageUp, PageDown 버튼을 눌렀을때, 페이지가 변하는데..
사용자가 Tab, Shift+Tab의 사용을 원하고 있습니다.
방법을 아시는 고수 분들의 답변을 부탁드립니다..
이렇게 함 해보세요
form의 keypreview를 true 로 설정하고
formkeypress에서
if ActiveControl is TPageControl then
begin
if PageControl.ActivePage <> 마지막페이지 then
PageControl.ActivePage := PageControl.ActivePage + 1;
end
else
Key := #0;
뭐 이런식으로 한번 테스트 해보세요