2010-03-25 3 views
2

나는 여러 개의 CView-derived 클래스 (실제로는 CScrollView)를 사용하여 문서 데이터를 표시하는 앱을 가지고 있습니다. 특정보기의 경우, 플라이 아웃 편집 상자를 추가하여 메모를 추가하려고합니다. 즉, 창 하단에 "페이지 메모"라고 표시된 탭이 표시되고이를 클릭하면 편집 상자가 나타납니다. 편집 상자가 표시된 상태에서 탭을 클릭하면 탭으로 다시 축소됩니다.CView를 통해 컨트롤을 플로트

나는 하나의 탭을 사용하여 편집 상자를 잡고 단지 탭만 표시되도록 배치 할 수 있다고 생각했습니다. 탭 클릭 알림을 캡처하고 편집 상자가있는 전체 컨트롤을보기로 이동하십시오. 탭을 다시 클릭하면 해당 탭만 뒤로 이동하므로 탭 만 보입니다.

CViewCTabCtrl을 호스팅하면 문제가 없으며 올바르게 배치 할 수 있습니다. 문제는 뷰를 스크롤하면 탭 컨트롤이 함께 스크롤되는 반면, 뷰 위에 "플로트"해야하며 스크롤에 의해 영향을받지 않아야한다는 것입니다. 나는 두루마리를 찍은 후에 다시 그것을 움직일 수 있지만, 깜박 거리는 것은보기 흉합니다.

"떠 다니는"효과를 내기위한 간단한 방법이 있습니까? 필자는 유지 보수를 위해 뷰에 임베드 된 탭을 주로 사용하기 때문에 "페이지 메모"기능이 필요한 여러 뷰 중 유일하게 뷰 클래스에 속합니다.

그냥 버클을 사용하여 탭을 뷰의 상위 창에 대신 표시해야합니까? 나는 그것이 스크롤링에 의해 영향을받지 않을 것이라는 것을 안다. 그러나 가능한 경우 탭을 뷰의 일부로 유지하는 아이디어를 좋아한다.

+0

스크롤해야하는 것이 아니라면 말한 것처럼 스크롤보기의 바깥쪽에 있으면 안됩니까? 아마도보기를 두 개의보기로 분할해야합니까? – Jaywalker

답변

1

마치 탭처럼 작동하는 것처럼 들립니다. 탭을 클릭하면 플라이 아웃 입력란이 나타납니다. 모덜리스 대화 상자를 사용할 수 있습니다. "페이지 메모"를 선택하면 모덜리스 대화 상자가 나타나서 메모를 편집하여 대화 상자 아래에서보기를 스크롤 할 수 있습니다.

+0

나는 그것이 좋은 방법이라고 생각한다. – Brent81