2017-12-21 26 views
-1

Windows API에 익숙하지 않습니다. W.API를 사용하여 사용자 폼의 크기를 조정하는 방법에 대한 코드를 복사하지만 크기를 조정하는 동안 다중 페이지의 너비를 사용자 정의 폼에 바인딩하려고합니다. W.API를 사용하여 여러 페이지 나 다른 개체를 사용할 수도 있습니까? 아니면 활성 창에 대해서만? .Windows API를 사용하여 사용자 폼 및 다중 페이지 크기 조정

다음은 코드입니다.

Private Sub MakeFormResizable() 

Dim lStyle As Long 
Dim hWnd As Long 
Dim RetVal 

Const WS_THICKFRAME = &H40000 
Const GWL_STYLE As Long = (-16) 

hWnd = GetActiveWindow 


lStyle = GetWindowLong(hWnd, GWL_STYLE) Or WS_THICKFRAME 


RetVal = SetWindowLong(hWnd, GWL_STYLE, lStyle) 


SetLastError 0 
End Sub 

감사합니다.

+0

변경됩니다, 윈도우 API가 그것에 대해 할 수있는 일은 없다. 창 크기를 조정하면 자식 컨트롤의 크기와 위치를 조정하는 코드가 필요합니다. Windows API는 허술한 코드를 생성하지 않습니다. – IInspectable

+0

다른 방법으로 할 수 있습니까? 어떠한 제안? 창 크기를 조정 한 후에이 작업을 수행 할 수 있음을 의미합니다. 그러나 그것은 다소 그것을 보는 것을 나쁘게 본다. : – remoel

답변

0

높이 및 너비 속성을 설정하여 사용자 정의 폼의 너비와 높이를 변경할 수 있습니다. 창 크기를 조정할 수 할 준비가되어 있지 않으면 "mpFred"라는 다중 제어 "frmDemo"라는 정의 폼을 감안할 때 다음이 그것을

Sub MakeBigger() 
    frmDemo.width = frmdemo.width + 100 'increase by 100 points 
    frmDemo.Height = 650 'set to specific value 
    frmDemo.Controls("mpfred").width =frmDemo.Controls("mpfred").width + 100 
    frmDemo.Controls("mpfred").height = frmdemo,height - 20 'slightly shorter than the form 

End Sub 
+0

안녕하세요. 답장을 보내 주셔서 감사합니다.하지만 사용자 폼의 크기를 조정할 때 다중 페이지도 크기를 조절할 때 브라우저에서 크기를 조정하고 내부에서 내용을 변경하는 등의 작업을 수행하고 싶습니다. – remoel

+0

http://www.andypope.info/vba/Anchor.htm –

+0

이것은 내가 찾고있는 것입니다. 감사합니다. – remoel