2012-12-07 4 views
1

Form1.Height 또는 Form1.Width을 사용하면 창 테두리 높이와 너비를 포함하므로 vb6 내부 양식의 크기를 조정할 수 있습니까? 예를 들어 WinXP에서이 코드를 한 창 테마에서 사용할 수 있습니다. XP 테마는 있지만 Classic 테마가있는 WinXP에서는 작동하지 않습니다. 너무 오래 걸렸습니다), 어떤 제안입니까?vb6 내부 모양 크기 조정

enter image description here

답변

3

은 당신이 할 수있는 비 클라이언트 국경에 크기를 얻기 위해 (내부 크기)를 ScaleWidth에 폭 (외부 크기)를 비교합니다. 마찬가지로 Height와 ScaleHeight를 비교하여 클라이언트 크기가 아닌 크기를 위와 아래로 가져올 수 있습니다. 그로부터 당신은 플러스 클라이언트 크기가 아닌 내부 (클라이언트 영역) 크기를 기반으로 최종 높이와 너비를 설정할 수 있습니다.

Const DesiredClientHeight as Single = 3435 
    Const DesiredClientWidth as Single = 3345 

    Dim fNonClientHoriz As Single, fNonClientVert As Single 

    fNonClientHoriz = Me.Width - Me.ScaleWidth 
    fNonClientVert = Me.Height- Me.ScaleHeight 

    Me.Width = DesiredClientWidth + fNonClientHoriz 
    Me.Height = DesiredClientHeight + fNonClientVert 

양식의 폭과 높이를 트윕에 ​​항상주의하십시오, 그래서 당신은 당신이 계정이 필요합니다 트윕 이외로 크기 조절 모드를 변경하면이 같은

무언가가 당신의 Form_Load에 갈 수 그에 대한.

+0

Whoaa, 고마워 친구, 이제는 보류중인 프로젝트를 계속할 수 있습니다 ... – faid

관련 문제