Hei taas!
Haluaisin tietää, että miten voi poistaa MDI Formista tuon Maximize buttonin? Haluaisin siis, että heti alkuun menisi MDI Formi fullscreeniin ja sitten sitä kokoa ei enää voisi muuttaa.
Onko muuten mitään tapaa miten saisi MDI Formin sisällä menevät formit menemään MDI Formia hiukan pienemmiksi koska MDI Formissani on toolbar käytössä. Ja miten voisi tuon Formin uudelleen mitoituksen jälkeen Formin sisällä olevat buttonit laittaa oikeille paikoilleen?
Toivottavasti tuli tehtyä kysymykseni selväksi!
-Syn
Syntty kirjoitti:
Haluaisin tietää, että miten voi poistaa MDI Formista tuon Maximize buttonin? Haluaisin siis, että heti alkuun menisi MDI Formi fullscreeniin ja sitten sitä kokoa ei enää voisi muuttaa.
Tämä koodi voisi olla lähellä haluamaasi:
Option Explicit
Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
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 Const SC_MINIMIZE = &HF020&
Private Const SC_MAXIMIZE = &HF030&
Private Const SC_RESTORE = &HF120&
Private Const MF_BYCOMMAND = &H0&
Private Const WS_MINIMIZEBOX = &H20000
Private Const WS_MAXIMIZEBOX = &H10000
Private Const GWL_STYLE = (-16)
Sub MDIForm_Load()
Me.WindowState = vbMaximized
Dim ikkuna As Long
ikkuna = Me.hwnd
Dim valikko As Long
valikko = GetSystemMenu(ikkuna, False)
DeleteMenu valikko, SC_MINIMIZE, MF_BYCOMMAND
DeleteMenu valikko, SC_MAXIMIZE, MF_BYCOMMAND
DeleteMenu valikko, SC_RESTORE, MF_BYCOMMAND
Dim tyyli As Long
tyyli = GetWindowLong(ikkuna, GWL_STYLE)
tyyli = tyyli And Not WS_MINIMIZEBOX And Not WS_MAXIMIZEBOX
SetWindowLong ikkuna, GWL_STYLE, tyyli
End SubSyntty kirjoitti:
Onko muuten mitään tapaa miten saisi MDI Formin sisällä menevät formit menemään MDI Formia hiukan pienemmiksi koska MDI Formissani on toolbar käytössä. Ja miten voisi tuon Formin uudelleen mitoituksen jälkeen Formin sisällä olevat buttonit laittaa oikeille paikoilleen?
Voit muuttaa ikkunoiden ja nappuloiden sijaintia ja kokoa ominaisuuksien Left (etäisyys vasemmasta reunasta), Top (etäisyys yläreunasta), Width (leveys) ja Height (korkeus) avulla.
Aihe on jo aika vanha, joten et voi enää vastata siihen.