Tặng các bạn thủ tục Form Zoom

Liên hệ QC

Hoàng Trọng Nghĩa

Chuyên gia GPE
Thành viên BQT
Moderator
Tham gia
17/8/08
Bài viết
8,662
Được thích
16,720
Giới tính
Nam
Buồn buồn ngày cuối tuần mà phải trực công ty, tôi làm cái thủ tục Zoom Form này để tặng các bạn và tôi nghĩ nó sẽ giúp ích cho các bạn nếu các bạn thường xuyên sử dụng Userform khi nhập liệu, thiết kế giao diện form.

Trước khi sử dụng chúng phải có hàm API mới thực hiện được:

PHP:
Declare Function GetSystemMetrics32 Lib "user32" Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long

Hàm kiểm tra chiều rộng độ phân giải màn hình:

PHP:
Function ScrW()
  ScrW = GetSystemMetrics32(0)
End Function

Hàm kiểm tra chiều cao độ phân giải màn hình:

PHP:
Function ScrH()
  ScrH = GetSystemMetrics32(1)
End Function


Và thủ tục dưới đây được đặt trong Form khi thiết kế:

PHP:
Private Sub ZoomForm()
  Dim ZoomW As Double, ZoomH As Double
  Dim MyControl As Control
  '(800 x 600  là do phân giai màn hình khi thiet ke Form)
  ZoomW = ScrW / 800: ZoomH = ScrH / 600
  For Each MyControl In Me.Controls
    With MyControl
      .Top = .Top * ZoomH
      .Height = .Height * ZoomH
      .Left = .Left * ZoomW
      .Width = .Width * ZoomW
      .Font.Size = .Font.Size * ZoomW
    End With
  Next
  With Me
    .Width = .Width * ZoomW
    .Height = .Height * ZoomH
  End With
End Sub

PHP:
Private Sub UserForm_Initialize()
  Call ZoomForm
End Sub

Các bạn lưu ý, ở đây có 2 thông số: 800 và 600. Đây là độ phân giải màn hình khi các bạn thiết kế Form, muốn biết chính xác độ phân giải màn hình của mình, thì các bạn sử dụng thủ tục sau:

PHP:
Sub DoPhanGiai()
  MsgBox "Chieu rong (W): " & ScrW & Chr(10) & Chr(10) & "Chieu cao (H): " & ScrH, , "DO PHAN GIAI MAN HINH"
End Sub
 

File đính kèm

Anh có thể tham khảo trong link này của thầy TRẦN NGỌC BẢO đh sư phạm
http://fit.hcmup.edu.vn/~tnb
trong đó có phân VB và có một bài nói rõ về Lớp
trong VB có Source Code có bài lập trình hướng đối tượng anh xem nha

Trước tiên, cám ơn bạn đã gửi những đường link, nhưng sau khi xem sơ qua, tôi chưa thấy bài nào nói về Class Module cả, bạn vui lòng cho biết nó nằm trên file nào hay không?
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom