2012-12-02 2 views
1

현재 개발중인 프로그램에 대한 질문이 있습니다. 미안 포스트가 명확하게 읽을 수없는 경우, 초보자 프로그래밍 완벽 주의자로서 가능한 모든 것을 분명히 설명하려고 노력합니다.패널의 높이 양식

나는 Windows Form에 두 개의 별도의 패널을 frmMain.vb라고 한 번이 sidebarPanel 다른 하나라고하는 mainPanel라고 : 런타임시

http://i.stack.imgur.com/Zs2lt.png

,이 양식과 같은 모습입니다 :

Me.Size = New Size(900, 600) 

http://i.stack.imgur.com/gdA3z.png

: 은 내가이 주제에 맞게 수 있도록 화면을 축소, 실제 크기는 frmMain_Load에서이 코드를 통해 900, 600입니다 사이드 바는 파란색 얼마나 궁금해하는 경우
With sidebarPanel 
    .Top = 0 
    .Left = 0 
    .Width = 200 
    .Height = 300 
End With 

With mainPanel 
    .Top = 0 
    .Left = 200 
    .Width = 200 
    .Height = 300 
End With 

가, 그 조각 DLL에서 제공

은, 코드의 조각이 난에 남겨 두었다 : 16,

는 이제 다음 코드 조각을 만들었습니다 이 질문을 쉽게 지키십시오. 소스 코드를 면밀히 살펴보면 사이드 바의 너비는 200이고 메인 패널의 너비는 왼쪽에서 200입니다.

그런 식으로. 나는이 질문에 대해 Stackoverflow, Google 및 일부 VB.NET 포럼을 검색했지만 답변을 알고 싶습니다.하지만 나는 외롭을 것 같습니다.

사이드 바의 전체 높이를 100 %로 만들려면 어떻게해야합니까? 크기를 변경하면 사이드 바의 높이도 변경됩니다. 같은 질문이 메인 패널에 대한 것입니다.

친절하게 읽어 주셔서 감사 드리며 답변을 보내 주셔서 감사합니다.

답변

2

패널의 Height 속성을 Me.ClientSize.Height으로 설정하여 양식의 Resize 이벤트에서 수동으로 설정할 수 있지만 디자인 타임에 모든 작업을 더 쉽게 수행 할 수 있습니다.

이렇게하려면 양식 디자이너에서 먼저 현재 양식 크기에 맞게 패널을 배치하고 크기를 조정 한 다음 Dock 속성을 둘 다 적절히 설정하십시오. 측면 패널의 Dock 속성을 위쪽, 왼쪽 및 아래쪽으로 설정합니다. 메인 패널의 Dock 속성이 위쪽, 아래쪽, 왼쪽 및 오른쪽 (4면 모두)으로 설정되기를 원할 것입니다. 독 (dock) 속성이 제대로 설정되면 폼의 크기가 조정됨에 따라 컨트롤의 크기가 자동으로 조정됩니다.

Dock 속성을 설정 한 후에는 디자이너에서 바로 양식의 크기를 조정하여 테스트 할 수 있습니다.

1

SplitContainer 컨트롤을 사용하는 것이 더 쉽습니다. 다음, FillTableLayoutPanel.Dock 속성을 설정 TableLayoutPanel 내부의 각 컨트롤의 .Anchor 속성을 설정

더 복잡한 제어 레이아웃을 위해 당신은 당신의 컨트롤을 배치하는 TableLayoutPanel를 사용할 수 있습니다. TableLayoutPanel (디자인 타임 중)의 오른쪽 상단에는 작은 행과 열의 높이와 너비를 지정할 수있는 작은 화살표가 있습니다.

+0

+1 좋은 지적. 나는이 옵션에 대해 언급 했어야했다.이 방법을 사용하면 사용자가 사이드 바를 크기 조정할 수 있습니다.이 경우 사용자는 사이드 바의 크기를 원하는대로 조정할 수 있습니다. –

+0

TableLayoutPanel이 사용자 사이징에 내장되어 있다고 생각하지 않았습니까? 하지만 OP의 또 다른 옵션 인 SplitContainer를 사용할 수 있습니다. – SSS

+0

예. 혼란을 드려 죄송합니다. SplitContainer는 제가 생각하고 있던 것입니다. –