Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

MDI Form i Maximize

[es] :: Visual Basic 6 :: MDI Form i Maximize

[ Pregleda: 2255 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

KaAmIkAzA
Banja Luka

Član broj: 55521
Poruke: 58
*.teol.net.



Profil

icon MDI Form i Maximize01.09.2008. u 13:40 - pre 190 meseci
Kako ukloniti dugme za MAXIMIZE na MDI formi
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
79.101.67.*



+41 Profil

icon Re: MDI Form i Maximize01.09.2008. u 16:02 - pre 190 meseci
Na standardan nacin nikako, jedino nesto preko API-ja (za to ce ti Eurora3D ili krcko vec dati resenje ako ga ima).
 
Odgovor na temu

stefanpn
Total anonymous
Programer

Član broj: 172809
Poruke: 509
79.101.177.*



+1 Profil

icon Re: MDI Form i Maximize01.09.2008. u 16:56 - pre 190 meseci
Ja imam nacin za disableovanje X dugmeta, ali to nije ono sto tebi treba...

Code:

'U modulu:
Public Declare Function SetWindowPos Lib "user32.dll" (ByVal hWnd As Long, _
ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, _
ByVal cy As Long, ByVal wFlags As Long) As Long
Public Const MF_BYPOSITION = &H400&

Public Declare Function RemoveMenu Lib "User32" (ByVal hMenu As Long, _
ByVal nPosition As Long, ByVal wFlags As Long) As Long

Public Declare Function GetSystemMenu Lib "User32" (ByVal hWnd As Long, _
ByVal bRevert As Long) As Long

Public Sub DisableClose(hWnd As Long)
    Dim hMenu As Long
    hMenu = GetSystemMenu(hWnd, 0)
    RemoveMenu hMenu, 6, MF_BYPOSITION
    RemoveMenu hMenu, 5, MF_BYPOSITION
End Sub


pozivas ga sa:
Code:


DisableClose frmForm.hWnd



Evo ti jedno mnogo jednostavnije rešenje koje radi i na MDI i na svim drugim formama:

Code:

Private Sub Form_Resize()
    
    If Me.WindowState = 2 Then
        Me.WindowState = 0
    End If
    
End Sub
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
91.148.112.*



+7 Profil

icon Re: MDI Form i Maximize02.09.2008. u 00:20 - pre 190 meseci

Ja se nisam do sad sretao sa ovim "problemom" ali sam uspeo da iz nekoliko pokusaja dobijem ono sto se trazi. Maximize nije uklonjen (trebalo bi da se promeni i border stil i minimize da bi to moglo) ali je disabled (prozor vise nema mogucnost da se maximalizuje dugmetom).
Stil koji se dobija je klasican MDI stil prozora , samo nije uljuceno WS_MAXIMIZEBOX (maximize dugme)
Win Api funkcija je SetWindowLong a konstante koje se ne koriste sam dodao ako neko hoce da eksperimentise sa stilovima.
Code:

Private Const WS_MAXIMIZEBOX = &H10000
Private Const WS_MINIMIZEBOX = &H20000
Private Const WS_OVERLAPPED = &H0&
Private Const WS_CAPTION = &HC00000
Private Const WS_SYSMENU = &H80000
Private Const WS_THICKFRAME = &H40000

Private Const WS_CLIPCHILDREN = &H2000000
Private Const WS_OVERLAPPEDWINDOW = (WS_OVERLAPPED Or WS_CAPTION Or WS_SYSMENU Or WS_THICKFRAME Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX)

Private Const GWL_STYLE = (-16)
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Private Sub MDIForm_Load()
Dim wLong As Long
wLong = WS_OVERLAPPED Or WS_CAPTION Or WS_SYSMENU Or WS_THICKFRAME Or WS_MINIMIZEBOX Or WS_CLIPCHILDREN
If SetWindowLong(Me.hwnd, GWL_STYLE, wLong) = 0 Then Debug.Print "Greska"
End Sub

p.s Ako hoces fiksne ivice prozora izbrisi Or WS_THICKFRAME
Sa ovim dobijas MDI formu fiksnih ivica i samo sa X dugmetom
wLong = WS_OVERLAPPED Or WS_CAPTION Or WS_SYSMENU Or WS_CLIPCHILDREN

[Ovu poruku je menjao Eurora3D Team dana 03.09.2008. u 02:24 GMT+1]
 
Odgovor na temu

stefanpn
Total anonymous
Programer

Član broj: 172809
Poruke: 509
77.46.255.*



+1 Profil

icon Re: MDI Form i Maximize15.09.2008. u 09:42 - pre 190 meseci
Citat:
goranvuc: Na standardan nacin nikako, jedino nesto preko API-ja (...).


Nije tacno.

Prikačeni fajlovi
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
93.86.78.*



+41 Profil

icon Re: MDI Form i Maximize15.09.2008. u 09:44 - pre 190 meseci
A da malo pazljivije citas?

Pitanje je bilo MDI Form!!!
 
Odgovor na temu

stefanpn
Total anonymous
Programer

Član broj: 172809
Poruke: 509
77.46.255.*



+1 Profil

icon Re: MDI Form i Maximize15.09.2008. u 10:43 - pre 190 meseci
Ok, moja greska.
 
Odgovor na temu

[es] :: Visual Basic 6 :: MDI Form i Maximize

[ Pregleda: 2255 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.