Option Explicit
Public Sub FormWinRegPos(pMyForm As Form, Optional pbSave As Boolean) 'This Procedure will Either Retrieve or Save Form Posn values 'Best used on Form Load and Unload or QueryUnLoad On Error Goto EH With pMyForm SaveSetting App.EXEName, .Name, "WindowState", .WindowState If .WindowState = vbMinimized Or .WindowState = vbMaximized Then .WindowState = vbNormal End If If pbSave = True Then ' e' in uscita 'Save AppName...FrmName...KeyName...Value SaveSetting App.EXEName, .Name, "Top", .Top SaveSetting App.EXEName, .Name, "Left", .Left SaveSetting App.EXEName, .Name, "Height", .Height SaveSetting App.EXEName, .Name, "Width", .Width Else .Top = GetSetting(App.EXEName, .Name, "Top", .Top) .Left = GetSetting(App.EXEName, .Name, "Left", .Left) .Height = GetSetting(App.EXEName, Name, "Height", .Height) .Width = GetSetting(App.EXEName, .Name, "Width", .Width) .WindowState = GetSetting(App.EXEName, _ .Name, "WindowState", .WindowState) End If End With Exit Sub EH: MsgBox "Error " & Err.Number & vbCrLf & vbCrLf & Err.Description End Sub Private Sub Form_Load() FormWinRegPos Me End Sub Private Sub Form_Unload(Cancel As Integer) FormWinRegPos Me, True End Sub Inputs: pMyForm As Form Optional pbSave As Boolean Assumes: Best to use this in either Form_Load, Form_Unload or Form_QueryUnload Form_Load For Getting the Saved Form Posn Settings Unload or QueryUnload For saveing Current Form Posn. |