VBcoders Guest



Don't have an account yet? Register
 


Forgot Password?



Save last screen position

by Max - Demian Net (4 Submissions)
Category: Custom Controls/Forms/Menus
Compatability: Visual Basic 3.0
Difficulty: Intermediate
Date Added: Wed 3rd February 2021
Rating: (4 Votes)

Save the last screen position of your form.

Rate Save last screen position

Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Function GetFromINI(Section As String, Key As String, Directory As String) As String
  Dim strBuffer As String
  strBuffer = String(750, Chr(0))
  Key$ = LCase$(Key$)
  GetFromINI$ = Left(strBuffer, GetPrivateProfileString(Section$, ByVal Key$, "", strBuffer, Len(strBuffer), Directory$))
End Function
Private Sub WriteToINI(Section As String, Key As String, KeyValue As String, Directory As String)
  Call WritePrivateProfileString(Section$, UCase$(Key$), KeyValue$, Directory$)
End Sub
Private Sub Form_Load()
On Error Resume Next
Form1.Top = GetFromINI("SCREEN", "TOP", App.Path & "\screen.ini")
Form1.Left = GetFromINI("SCREEN", "LEFT", App.Path & "\screen.ini")
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
WriteToINI "SCREEN", "TOP", Form1.Top, App.Path & "\screen.ini"
WriteToINI "SCREEN", "LEFT", Form1.Left, App.Path & "\screen.ini"
End Sub

Download this snippet    Add to My Saved Code

Save last screen position Comments

No comments have been posted about Save last screen position. Why not be the first to post a comment about Save last screen position.

Post your comment

Subject:
Message:
0/1000 characters