안녕하세요...
파워빌더 TIP 에 있는
MDI 작업하면서 Tab Control 사용하기에 대해서...
보고 공부하고 있습니다...
다름이 아니라 메뉴 Open 에 sheet1, sheet2, sheet3
3개의 sheet 가 있던데요...
sheet 실행할때 마다 Tab 이 계속 생기던데
안 생기고 맨처음 해당 sheet 생성할때만 Tab 이 생기고
같은 sheet 실행하면 해당 Tab을 찾아 가게 할수는 없는지요?
다음검색
댓글
댓글 리스트-
작성자파빌신 작성시간 14.06.10 소스를 잘보시면 알수 있을것 같은데요, 같은오브젝트를 찾는 함수가 있습니다, Text 를 비교 하여 찾을수 있습니다.
w_mdi ue_opensheet Event를 잘 분석 해보세요 그리고 wf_FindObject 함수도 잘보세요
wf_FindObject으로 index 찾으면 tab_1.Selecttab( tab_1.control[li_max] ) 못찾으면 Open 로직 -
작성자파빌조아 작성자 본인 여부 작성자 작성시간 14.06.11 ue_opensheet 에서
li_max = wf_FindObject (as_text, False) // True 를 False 로 수정
if li_max > 0 Then
tab_1.Selecttab(li_max)
Return
End IF
이런 식으로 만들었는데
되긴 되는데 tab 이 하나 더 만들어 지네요 ㅠㅠ
-
답댓글 작성자파빌신 작성시간 14.06.11 uo_tabbar ln_open
integer li_index, li_max
w_sheet lw_open
// 같은것이 있는지 찾아서
li_max = wf_FindObject (as_text, false)
if li_max > 0 then
tab_1.Selecttab( tab_1.control[li_max] )
else
li_index = upperBound( tab_1.control ) + 1
tab_1.Opentab( ln_open, "uo_tabbar", li_index)
li_max ++
ln_open.text = as_text// + '_' + String(li_max)
ln_open.is_Text = ln_open.text
ln_open.powertiptext = ln_open.is_Text
tab_1.Selecttab( ln_open )
OpenSheet( lw_open, 'w_sheet', This, 1, Layered! )
lw_open.title = ln_open.text
end if -
작성자파빌조아 작성자 본인 여부 작성자 작성시간 14.06.17 감사합니다... 잘 되는데
Tab 창을 모두 닫고, 다시 Tab 을 열려고 하면
Error 가 나네요 ㅠㅠ