Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: VB: Ikkunan asetus ruudulla

vb1235 [28.08.2006 19:31:39]

#

Kuinka vb6:lla voi keskittää ulkoisen ikkunan ruudun yläkulmaan? kun tiedetään vaikka ohjelman otsikko..

Antti Laaksonen [28.08.2006 20:10:51]

#

Kun ikkunan hwnd on tiedossa, voit käyttää WinAPIn SetWindowPos-funktiota:

SetWindowPos hwnd, 0, 0, 0, 0, 0, SWP_NOSIZE Or SWP_NOZORDER

Legu [28.08.2006 20:28:03]

#

'määrittelyt
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SetWindowPos Lib "user32" (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
Const SWP_NOSIZE = 1

Private Sub Command1_Click()
Dim hanska As Long
Dim ResoX As Integer
Dim ResoY As Integer

'Me.captionin paikalle ikkunan nimi
hanska = FindWindow(vbNullString, Me.Caption)

'katsotaan resoluutio (scalemode = twips)
ResoX = Screen.Width / Screen.TwipsPerPixelX
ResoY = Screen.Height / Screen.TwipsPerPixelY

'lämätään keskelle ruutua
Call SetWindowPos(hanska, 0, ResoX / 2, ResoY / 2, 0, 0, SWP_NOSIZE)
End Sub

Tolla pitäis onnistuu

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta