Resize Form sau khi mở Form mới

Liên hệ QC

Ếch Xanh

Thành viên tích cực
Tham gia
12/8/09
Bài viết
865
Được thích
1,572
Kính thưa các Thầy và các bạn, tôi có trường hợp như sau cần hướng dẫn và giúp đỡ:

Khi UserForm1 hiện ra, bấm vào nút lệnh CommandButton1, thì UserFom2 hiện ra.

Làm cách nào để khi UserFom2 hiện ra thì UserForm1 được thu nhỏ nhất (minimized) - không Hide cũng không Unload?

Xin cám ơn rất nhiều!


Code của UserForm1 :

PHP:
Option Explicit
Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "user32.dll" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32.dll" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
 
Private Const GWL_STYLE As Long = -16
Private Const WS_MAXIMIZEBOX As Long = &H10000
Private Const WS_MINIMIZEBOX As Long = &H20000
 
Dim hwnd&, oldStyle&
 
Private Sub UserForm_Initialize()
  hwnd = FindWindow("ThunderDFrame", Me.Caption)
  oldStyle = GetWindowLong(hwnd, GWL_STYLE)
  SetWindowLong hwnd, GWL_STYLE, oldStyle Or WS_MINIMIZEBOX 'Or WS_MAXIMIZEBOX
End Sub
 
Private Sub CommandButton1_Click()
  UserForm2.Show
  'Code làm cho UseForm1 thu nho (minimized)
End Sub
 

File đính kèm

Kính thưa các Thầy và các bạn, tôi có trường hợp như sau cần hướng dẫn và giúp đỡ:

Khi UserForm1 hiện ra, bấm vào nút lệnh CommandButton1, thì UserFom2 hiện ra.

Làm cách nào để khi UserFom2 hiện ra thì UserForm1 được thu nhỏ nhất (minimized) - không Hide cũng không Unload?

Xin cám ơn rất nhiều!
Tôi nghĩ cái củ chuối này:
1> Trong Module
PHP:
Public fmTop As Double
Public fmLeft As Double
Public fmWidth As Double
Public fmHeight As Double
1> Trong Form1
PHP:
Private Sub CommandButton1_Click()
  UserForm2.Show
End Sub
3> Trong Form2
PHP:
Private Sub CommandButton1_Click()
  Unload Me
End Sub
PHP:
Private Sub UserForm_Initialize()
  With UserForm1
    fmTop = .Top
    fmLeft = .Left
    fmWidth = .Width
    fmHeight = .Height
    .Width = 0
    .Height = 0
  End With
End Sub
PHP:
Private Sub UserForm_Terminate()
  With UserForm1
    .Top = fmTop
    .Left = fmLeft
    .Width = fmWidth
    .Height = fmHeight
  End With
End Sub
 
Upvote 0
Cám ơn Thầy đã quan tâm, cái này trước đây em đã thử rồi, không đúng yêu cầu, bởi sau khi load form2 lên, ta bấm vào nút min của form1, nó tuột xuống dưới, khi bấm nút thoát của Form2 thì sẽ báo lỗi. Thứ 2 là khi ta thao tác trên Form1 (resize) thì không được nữa!

Có lẽ phải dùng Class Module, nhưng cái này em chưa biết tí nào hết! Hic.

Dĩ nhiên là em có mục đích riêng mới làm như vậy.
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom