Just nu i M3-nätverket
Gå till innehåll

Centrera userform efter ändrad storlek


Micke_Sthlm

Rekommendera Poster

Micke_Sthlm

I mitt makro ändrar jag storlek på mitt userform. Problemet är att det sedan skulle behöva centreras på skärmen.

 

Mvh Micke

 

Länk till kommentar
Dela på andra webbplatser

Enklast är om du kan utgår från att ditt UserForm är centrerat från början:

Private Sub CommandButton1_Click()
   MoveMe 20, 0
End Sub

Private Sub CommandButton2_Click()
   MoveMe -20, 0
End Sub

Sub MoveMe(w As Integer, h As Integer)
   Me.width = Me.width + w
   Me.height = Me.height + h
   Me.left = Me.left - w / 2
   Me.top = Me.top - h / 2
End Sub

 

Annars, om användaren kan ha flyttat runt det, då gäller det att snappa upp var fönstret är när det visas:

Dim iLeft  As Integer
Dim iTop As Integer

Private Sub UserForm_Activate()
   If iLeft = 0 Then
       iLeft = Me.left
       iTop = Me.top
   End If
End Sub

Sub MoveMe2(w As Integer, h As Integer)
   Me.width = Me.width + w
   Me.height = Me.height + h
   iLeft = iLeft - w / 2
   iTop = iTop - h / 2
   Me.left = iLeft
   Me.top = iTop
End Sub

 

och flytta det relativt en sparad position hela tiden.

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...