2012-08-17 12 views
1

직접 만든 프레임 OCX에 배치 한 일부 VB6 컨트롤이 있습니다. 문제는 프레임이 표시 될 때, 때로는 컨트롤 (이 예제에서는 2 개의 콤보 상자)이 누락되어서이를 통해 Form의 배경색을 볼 수 있다는 것입니다.VB6 UserControl 프레임 위로 투명하게 나타나는 컨트롤

Usercontrol은 그라디언트가있는 이미지 2 개와 제목에 대한 레이블입니다.

해결해야 할 UserControls에 대한 설정이 있습니까?

enter image description here

편집을 할

AutoRedraw : 참 클립 컨트롤 : 진정한

+0

사용자 정의 프레임에서 AutoRedraw 및 ClipCOntrols 속성을 어떻게 설정합니까? – tcarvin

+0

@tcarvin 편집 됨, 둘 다 맞습니다. – gberg927

+0

지연되어 죄송합니다. 표준 VB6의 comboboxes 사용자 지정은 한 번입니까? 기본이 아닌 AutoRedraw 또는 ClipControl 설정이있는 다른 컨트롤에서 프레임이 다음에 있습니까? 양식을 드래그하면 콤보 상자가 새로 고쳐지나요? 다른 창으로 그들을 덮어서 공개하면, 새로 고침을합니까? – tcarvin

답변

1

클립 컨트롤을 False로 설정해야합니다. 전체 문제를 해결했습니다. 대답 주셔서 감사합니다

0

1) 컨테이너의 UserControl AutoRedraw = 사실과 ClipControls이 있는지 확인 = 진정한

2) 컨테이너 usercontrol에 다음 코드를 추가하십시오.

Private Sub UserControl_Paint() 
    Refresh 
End Sub 
+1

AutoRedraw를 True로 설정하면 Paint 이벤트가 발생하지 않아야합니다. – tcarvin

0

설정

backgroundimage.zorder 1

같은 배경 이미지 그리고 당신의 컨트롤

combobox1.zorder 0

당신은 런타임에이 작업을 수행 할 수 있습니다. 나는 당신의 콤보 박스가 Z-Order로 당신의 이미지 뒤에 푸시 된 것 같아요. 이것은 디자인 타임에 "앞으로 가져 오기"및 "뒤로 밀기"옵션과 유사합니다.

+0

당신이 downvote에 가고 적어도 당신이 그것을하고있는 이유를 게시하려는 경우 맨 위로. 그것은 적어도 OP 나 내가 왜 그 이유를 이해하도록 도울 수 있습니다. 전에 컨트롤과 함께이 정확한 문제가 있었는데 그것은 Z - 주문했다! – Dorian