- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
本帖最後由 GBKEE 於 2015-5-18 10:05 編輯
回復 9# PKKO
試試看自己縮放.
這表單的程式碼- Option Explicit
- Dim X As Double, Y As Double, e As Control
- Private Sub UserForm_Initialize() '表單初始化的程式
- Dim e As Control
- X = Width
- Y = Height
- For Each e In Me.Controls
- e.Tag = e.Top & "," & e.Left & "," & e.Width & "," & e.Height & "," & e.Font.Size
- Next
- End Sub
- Private Sub UserForm_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
- '發生在當使用者按了滑鼠鍵時。MouseDown 發生於使用者按下滑鼠鍵****
- Dim xZoom As Double
- If Shift = 2 Then 'Ctrl 鍵
- Select Case Button '滑鼠
- Case 1 '按下左滑鼠鍵。: 放大
- xZoom = 1.2 '放大 %2
- Case 2 '按下右滑鼠鍵。: 縮小
- xZoom = 0.8 '所小 %2
- End Select
- Zoom_UserForm xZoom '表單縮放程式
- ElseIf Shift = 1 Then 'Shift 鍵 +任一滑鼠按鍵
- Revert_UserForm '表單還原原本大小
- End If
- End Sub
- Private Sub Zoom_UserForm(xZoom As Double) '表單縮放
- Width = Width * xZoom
- Height = Height * xZoom
- For Each e In Controls
- With e
- .Top = .Top * xZoom
- .Left = .Left * xZoom
- .Width = .Width * xZoom
- .Height = .Height * xZoom
- .Font.Size = .Font.Size * xZoom
- End With
- Next
- End Sub
- Private Sub Revert_UserForm() '表單還原原本大小
- Dim xTag As Variant
- Width = X
- Height = Y
- For Each e In Me.Controls
- With e
- xTag = Split(.Tag, ",")
- .Top = xTag(0)
- .Left = xTag(1)
- .Width = xTag(2)
- .Height = xTag(3)
- .Font.Size = xTag(4)
- End With
- Next
- End Sub
複製代碼 |
|