|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Visual basic 6.0 сохранить изменения в текстовом поле |
|
VBA - [решено] Visual basic 6.0 сохранить изменения в текстовом поле
|
Пользователь Сообщения: 105 |
Добрый день! Хотел написать программу, в качестве шаблона использовал базу данных biblio.mdb. Есть 2 текстовых поля и два поля со списком бд, они связаны кнопкой "применить" так:
Private Sub Command1_Click() Text1.Text = DBCombo1.Text Text2.Text = DBCombo2.Text End Sub Также есть кнопки сохранить и выход. Хотел спросить как сохранить изменения в текстовых полях - Text1.Text и Text2.Text (чтобы программа открылась с теми же значениями, что и были выбраны при закрытии)? Заранее спасибо! |
|
Отправлено: 12:07, 28-08-2018 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата artemu88:
Скрытый текст
Option Explicit 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 Public strPath2Ini As String Private Sub Form_Initialize() strPath2Ini = App.Path & "\" & App.EXEName & ".ini" End Sub Private Sub Form_Load() Text1.Text = INIRead("Global", "TextBox1", strPath2Ini) Text2.Text = INIRead("Global", "TextBox2", strPath2Ini) End Sub Private Sub Form_Unload(Cancel As Integer) INIWrite "Global", "TextBox1", Text1.Text, strPath2Ini INIWrite "Global", "TextBox2", Text2.Text, strPath2Ini End Sub Public Function INIWrite(sSection As String, sKeyName As String, sNewString As String, sINIFileName As String) As Boolean Call WritePrivateProfileString(sSection, sKeyName, sNewString, sINIFileName) INIWrite = (Err.Number = 0) End Function Public Function INIRead(sSection As String, sKeyName As String, sINIFileName As String) As String Dim sRet As String sRet = String(255, Chr(0)) INIRead = Left(sRet, GetPrivateProfileString(sSection, ByVal sKeyName, "", sRet, Len(sRet), sINIFileName)) End Function Вместо того, чтобы сохранять в процедуре Form_Unload, Вы можете делать это в процедуре обработки нажатия кнопки «Сохранить». |
|
Отправлено: 12:32, 28-08-2018 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 105
|
Профиль | Отправить PM | Цитировать Я хотел, чтобы эти значения (в текстовых полях) подтягивались с помощью кнопки применить, а потом сохранялись по закрытии программы и загружались при новом открытии. Или это то же самое?
|
Отправлено: 12:44, 28-08-2018 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата artemu88:
Цитата artemu88:
Скрытый текст
![]() При загрузке формы значения из ini-файла загружаются и присваиваются текстовым полям. |
||
Отправлено: 13:23, 28-08-2018 | #4 |
Пользователь Сообщения: 105
|
Профиль | Отправить PM | Цитировать Теперь понял
А для того, чтобы появился ini нужно скомпилировать программу при помощи Package & Deployment Wizard? И писать все нужно код такой же как вы сказали? Я просто хотел на кнопку сделать (кнопка сохранить). При сохранении проекта у меня никакого файла ini нет |
|
Отправлено: 13:48, 28-08-2018 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата artemu88:
Цитата artemu88:
не в процедуру выгрузки формы Form_Unload(), а в процедуру обработки нажатия кнопки «Сохранить», только и всего. |
||
Отправлено: 15:18, 28-08-2018 | #6 |
Пользователь Сообщения: 105
|
Профиль | Отправить PM | Цитировать Спасибо большое, все заработало!
Не подскажете, какие книги по vb6 можно почитать, чтобы изучить в полном объеме? |
Отправлено: 11:24, 29-08-2018 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Любые. Главное — объём: желательно не менее 1200~1500 страниц, чтобы худо-бедно были рассмотрены основные вопросы и технологии.
|
Отправлено: 11:49, 29-08-2018 | #8 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Хотя нет, одну таки посоветую: Dan Appleman's Visual Basic Programmer's Guide to the Win32 API: Dan Appleman: 9780672315909: Amazon.com: Books, (есть перевод на русский язык, ищите по: Дэн Эпплман, «Win32 API и Visual Basic»). Помогает понять внутреннюю кухню VB, что на самом деле происходит «за кадром» при исполнении приложения, написанного на VB.
|
Отправлено: 14:50, 29-08-2018 | #9 |
Пользователь Сообщения: 105
|
Профиль | Отправить PM | Цитировать Спасибо, скачал! Заказал еще одну книгу по vb6 Сайлер Б. Использование Visual Basic 6. Классическое издание, правда 800 страниц, но по описанию вроде как ничего, потому как мой самоучитель даже бд не рассматривает
|
Отправлено: 13:15, 30-08-2018 | #10 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Спасайте! Замена первой строки в текстовом поле | eus_deus | AutoIt | 21 | 06-09-2013 22:01 | |
visual basic 6 | guma | Программирование и базы данных | 1 | 26-04-2007 20:41 | |
Visual Basic | MaxFactor | Программирование и базы данных | 56 | 06-10-2004 15:01 | |
Visual Basic !!! | skulida | Программирование и базы данных | 2 | 06-04-2003 12:13 | |
Visual Basic | Anton R | Программирование и базы данных | 2 | 03-04-2003 16:35 |
|