|
안녕하십니까.
정성훈.해미입니다.
탭의 Change이벤트의 AllowChange값을 이용하면 쉽게 해결됩니다.
AllowChange값을 true로 하면 이동되고 false로 설정하면 이동되지 않습니다.
예)
void __fastcall TForm1::TabSet1Change(TObject *Sender, int NewTab, bool &AllowChange)
{
if(MessageDlg("선택한 탭으로 이동하시겠습니까?", mtConfirmation, TMsgDlgButtons() << mbYes<<mbNo, 0) == mrYes)
{
AllowChange = true;
}
else
{
AllowChange = false;
}
}
//----------------------------------------
// ┏┓
// ┣┻┓┏ ┃┃ 작은 생각이 세상을 바꾼다
// ┃♡┃┣ ┣┫┏┓
// ┗━┛┗ ┃┃┣┫┏┓┏┓ - 정성훈.해미
// ━━━━━━━━━┣┛┣┛┗┫━━━━━━
//----------------------------------------
큰돌 님이 쓰신 글 :
: A와 B라는(또는 그 이상의) 탭이 있습니다.
:
: 현재 A 탭에서 사용자가 에디트 컨트롤 등에 값을 입력하고 B 탭을 클릭하면
:
: A 탭에 있는 값을 검사하고 이상이 있으면 에러 메시지를 표시한 후 A 탭을 보여주고 해당 컨트롤에 포커스를 맞추려고 합니다.
:
: TabSheet의 OnExit 이벤트에서 값을 검사를 하는데,
:
: A 탭을 다시 보여주기가 안 되네요.
:
: 볼랜드는 거의 사용하지 않은지라 어떻게 해야 될 지 모르겠습니다.
:
: 도움을 부탁드립니다.
|