返回列表 上一主題 發帖

[發問] 請教各位先進 多個Label設定的問題

本帖最後由 GBKEE 於 2013-5-24 15:47 編輯

回復 1# pinklee
使用[物件類別模組]  一次設定48個Label
表單模組程式碼
  1. 'TextBox1就會變色 改成為  Label控制項 命名為Label49
  2. Option Explicit
  3. Dim Form_Lable(1 To 48) As New Class1                 'Class1為[物件類別模組]
  4. Private Sub CommandButton1_Click()
  5.     Unload Me
  6. End Sub
  7. Private Sub UserForm_Initialize()
  8.     Dim i
  9.     For i = 1 To 48                                    '48個色碼 個別自放在不同 Label1->  Label48
  10.         Set Form_Lable(i).La = Controls("Label" & i)   '指定到物件類別模組的 La變數中
  11.     Next
  12.     Label49.Caption = "文字及底色預覽"
  13. End Sub
複製代碼
物件類別模組 Class1 程式碼
  1. Option Explicit
  2. Public WithEvents La As MSForms.Label
  3. Private Sub La_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  4.      With UserForm1
  5.         If .OptionButton1 Then
  6.             .Label49.BackColor = La.BackColor
  7.         ElseIf .OptionButton2 Then
  8.             .Label49.ForeColor = La.BackColor
  9.         End If
  10.     End With
  11. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 4# borshun88
  1. Private Sub Label1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  2.    'Shift :組合鍵 SHIFT,ALT,CTRL 的數值
  3.    'X 滑鼠X軸數值
  4.    'Y 滑鼠Y軸數值
  5.    Dim S As String
  6.    Select Case Button
  7.         Case 1
  8.             S = "[左鍵]"
  9.         Case 2
  10.             S = "[右鍵]"
  11.     End Select
  12.     MsgBox "你按了 " & S
  13. End Sub

  14. Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  15.       Application.DisplayStatusBar = True
  16.       Application.StatusBar = "滑鼠 X 軸數值 : " & X & vbLf & "  滑鼠 Y 軸數值 : " & Y
  17.       '顯示在狀態列
  18. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 脾氣嘴巴不好,心地再好也不能算是好人。
返回列表 上一主題