Ti si tu samo deklarisao funkciju, a nigde je nisi upotrebio.Da bi nešto uradio sa njom moraš da je pozoveš negde iz koda.
Recimo ovako
Code:
Private Sub Form_Load()
SetWindowPos Me.Hwnd, 0, 0 ,0, 300, 200, 0
End Sub
i to će ti postaviti veličinu na 300X200 pixela, dakle obrati pažnju, pixela, a ne twips-ova.No, to ti neće rešiti problem sa minimalnom veličinom forme.Evo jednog rešenja koje može to da odradi.
Ovo možeš da staviš u modul recimo
Code:
Option Explicit
Declare Function CallWindowProc Lib "user32.dll" Alias "CallWindowProcA" ( _
ByVal lpPrevWndFunc As Long, _
ByVal hwnd As Long, _
ByVal Msg As Long, _
ByVal wParam As Long, _
ByVal lParam As Long) As Long
Declare Function SetWindowLong Lib "user32.dll" Alias "SetWindowLongA" ( _
ByVal hwnd As Long, _
ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long
Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" ( _
pDest As Any, _
pSrc As Any, _
ByVal ByteLen As Long)
Type POINTAPI
x As Long
y As Long
End Type
Type MINMAXINFO
ptReserved As POINTAPI
ptMaxSize As POINTAPI
ptMaxPosition As POINTAPI
ptMinTrackSize As POINTAPI
ptMaxTrackSize As POINTAPI
End Type
Public Const GWL_WNDPROC = (-4)
Public Const WM_GETMINMAXINFO = &H24
Dim lpPrevWndProc As Long
Public Sub Hook()
lpPrevWndProc = SetWindowLong(Form1.hwnd, GWL_WNDPROC, AddressOf WindowProc)
End Sub
Function WindowProc( _
ByVal hw As Long, _
ByVal uMsg As Long, _
ByVal wParam As Long, _
ByVal lParam As Long) As Long
If uMsg = WM_GETMINMAXINFO Then
Dim MinMax As MINMAXINFO
CopyMemory MinMax, ByVal lParam, Len(MinMax)
MinMax.ptMinTrackSize.x = 1000 'ovde podesavas minimalnu X velicinu u pixelima
MinMax.ptMinTrackSize.y = 1000 ' ovde podesavas minimalnu Y velicinu u pixelima
CopyMemory ByVal lParam, MinMax, Len(MinMax)
Else
WindowProc = CallWindowProc(lpPrevWndProc, hw, uMsg, wParam, lParam)
End If
End Function
Public Sub Unhook()
SetWindowLong Form1.hwnd, GWL_WNDPROC, lpPrevWndProc
End Sub
A onda u kodu radis hook i unhook, tj. najbolje je da hukuješ na početku, a unhukuješ na kraju, odnosno
Code:
Private Sub Form_Load()
Hook
End Sub
hukuješ kad se forma učita, a
Code:
Private Sub Form_Unload(Cancel As Integer)
UnHook
End Sub
a unhukuješ po zatvaranju forme.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti