Кто-нибудь знает как можно сохранять настройки в программе!
Если можно по подробнее!Заранее спасибо!!!
Private Sub Form_Load()
Me.Left = GetSetting(App.EXEName, "Position", "Left", 0)
Me.Top = GetSetting(App.EXEName, "Position", "Top", 0)
Me.Caption = GetSetting(App.EXEName, "Other", "Caption", "Проба")
End Sub
Private Sub Form_Unload(Cancel As Integer)
SaveSetting App.EXEName, "Position", "Left", Me.Left
SaveSetting App.EXEName, "Position", "Top", Me.Top
SaveSetting App.EXEName, "Other", "Caption", Me.Caption
End Sub
moderator писал(а):Visual Basic имеет встроенные операторы и функции для работы с Системным Реестром (в дальнешем - реестр), он позволяет записывать, считывать и удалять данные только в разделе ключа HKEY_CURRENT_USER Software VB and VBA Program Setting.
Операторы:
Оператор SaveSetting – позволяет производить запись запись данных (автоматически создает подключи).
Синтаксис:
SaveSetting VBKeyName, Section, Key, Setting
Где:
SaveSetting имя самого оператора:
VBKeyName строковое значение, которое является именем внутреннего
подраздела VB and VBA Program Setting (иными словами,
создаваемая Вами главная папка);
Section строковое значение, которое является именем внутреннего
подраздела VBKeyName (иными словами, создаваемая Вами
папка находящаяся в Вашей главной папке. Таких Section -
папок у Вас может быть несколько.);
Key строковое значение, которое является именем параметра в
созданном, внутреннем подразделе Section (иными словами,
имя данных в созданной Вами Section - папке. Таких Key –
параметров у Вас может буть несколько.);
Setting строковое значение, которое Вы хотите присвоить созданному
Вами параметру;
Оператор DeleteSetting – позволяет удалять параметры и внутренние подразделы.
Синтаксис:
DeleteSetting VBKeyName, Section, Key
Где:
DeleteSetting имя самого оператора
VBKeyName строковое значение, которое является именем внутреннего
подраздела VB and VBA Program Setting (иными словами,
созданная Вами главная папка);
Section строковое значение, которое является именем внутреннего
подраздела VBKeyName (иными словами, одна из созданных
Вами папок находящихся в Вашей главной папке.);
Key строковое значение, которое является именем параметра в
удаляемом, внутреннем подразделе Section (иными словами,
имя удаляемых данных);
Если Вы захотите удалить сразу весь подраздел, а не некоторые параметры, то для этого используйте следующий синтаксис оператора DeleteSetting :
DeleteSetting VBKeyName, Section
Или, если Вы захотите удалить целиком созданный Вами внутренний подраздел VB and VBA Program Setting используйте следующий синтаксис оператора DeleteSetting :
DeleteSetting VBKeyName
Внимание!!! Пользуйтесь оператором DeleteSetting очень осторожно!
Функции
Функция GetSetting() – позволяет получить значения определенного параметра.
Синтаксис
MySet = GetSetting ( VBKeyName, Section, Key [, Default ] )
Где:
MySet строка для хранения возвращаемого функцией GetSetting значения;
GetSetting имя самой функции;
VBKeyName строковое значение, которое является именем внутреннего подраздела
VB and VBA Program Setting (иными словами, созданная Вами
главная папка);
Section строковое значение, которое является именем внутреннего подраздела
VBKeyName (иными словами, имя папки находящаяся в Вашей
главной папке.);
Key строковое значение, которое является именем параметра в созданном,
внутреннем подразделе Section (иными словами, имя данных
в Section - папке.);
Setting строковое значение, которое Вы хотите считать из данного параметра;
[ Default ] необязательный аргумент, представляющий строковое значение,
которое будет возвращено функцией в случае ошибки
(если такого параметра нет);
Функциа GetAllSettings() – позволяет получить массив значений из определенного подраздела.
Синтаксис:
MySet = GetAllSettings ( VBKeyName, Section)
Где:
MySet строка для хранения возвращаемого функцией GetAllSettings
значения;
GetAllSettings имя самой функции;
VBKeyName строковое значение, которое является именем внутреннего
подраздела VB and VBA Program Setting (иными словами,
созданная Вами главная папка);
Section строковое значение, которое является именем внутреннего
подраздела VBKeyName (иными словами, имя папки
находящаяся в Вашей главной папке.);
Private Sub Form_Unload(Cancel As Integer)
SaveSetting App.EXEName, "Position", "Left", Me.Left
End Sub
Private Sub Form_Initialize()
MySet = GetSetting(App.EXEName, "Position", "Left")
End Sub
'потом сдвигаю в любом направлении
Private Sub Form_Unload(Cancel As Integer)
SaveSetting App.EXEName, "Position", "Left", Me.Left
End Sub
Private Sub Form_Initialize()
Me.Left = GetSetting(App.EXEName, "Position", "Left", Me.Left)
Me.Top = GetSetting(App.EXEName, "Position", "top", Me.Top)
End Sub
Private Sub Form_Unload(Cancel As Integer)
SaveSetting App.EXEName, "Position", "Left", Me.Left
SaveSetting App.EXEName, "Position", "top", Me.Top
End Sub
Сейчас этот форум просматривают: С.Т., Yandex-бот и гости: 3