|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Загрузка параметров из ini файла в GUI |
|
|
[решено] Загрузка параметров из ini файла в GUI
|
Старожил Сообщения: 352 |
Профиль | Отправить PM | Цитировать
Приветствую, есть простенький код:
Скрытый текст
#include <ButtonConstants.au3> #include <ComboConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> $Form1 = GUICreate("Form1", 303, 136, 192, 124) $CheckViborOdin = GUICtrlCreateCheckbox("Checkbox1", 40, 24, 97, 17) $CheckViborDva = GUICtrlCreateCheckbox("Checkbox2", 40, 48, 97, 17) $CheckViborTri = GUICtrlCreateCheckbox("Checkbox3", 40, 72, 97, 17) $ComboVibora = GUICtrlCreateCombo("", 40, 96, 145, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL)) GUICtrlSetData($ComboVibora, "1|2|3", "2") GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd INI файл
[Settings] $CheckViborOdin=1 $CheckViborDva=4 $CheckViborTri=1 $ComboVibora=2 Возможно ли загружать значение переменных ($CheckViborOdin, $CheckViborDva, $CheckViborTri, $ComboVibora) из ini файла, если название значений указаны в ini файле ? |
|
Отправлено: 14:20, 18-09-2017 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать -TRM-, возможно. Символы $ в ini-файле ни к чему. Но какой, простите, в этом смысл для данного кода?!
Что это за оригинальный такой Checkbox: Цитата -TRM-:
|
|
Отправлено: 15:19, 18-09-2017 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 352
|
Профиль | Отправить PM | Цитировать Iska, прошу прощения, исправил. Просто хотелось создать универсальную процедуру, которая будет выставлять параметры по умолчанию (думаю с помощью GUICtrlSetState()). Сложность в том, что в ini файле идет текст названия реквизита, а вот как мне по этому названию найти реквизит и назначить-незнаю.
|
Последний раз редактировалось -TRM-, 18-09-2017 в 15:49. Отправлено: 15:43, 18-09-2017 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать -TRM-, «параметры по умолчанию» — это совсем, совсем другое, нежели переменные $CheckboxXX в Вашем коде. И ещё — скажите, что должно означать:
Цитата -TRM-:
|
|
Отправлено: 16:33, 18-09-2017 | #4 |
Старожил Сообщения: 352
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Цитата Iska:
IniWrite(@ScriptDir & "\Vibor.ini", "Settings", "$CheckViborOdin", GUICtrlRead($CheckViborOdin)) а вот как обратно загрузить сохранённые значения-не знаю. Можно было бы смотреть результат из ini файла и в зависимости от результата уже назначать через GUICtrlSetState(), но хотелось бы какую то универсальность. |
|||
Последний раз редактировалось -TRM-, 18-09-2017 в 17:39. Отправлено: 17:30, 18-09-2017 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата -TRM-:
Global Const $GUI_CHECKED = 1 Global Const $GUI_INDETERMINATE = 2 Global Const $GUI_UNCHECKED = 4 Цитата -TRM-:
Скрытый текст
#include <ButtonConstants.au3> #include <ComboConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> AutoItSetOption("MustDeclareVars", 1) Local $Form1 Local $Checkbox1 Local $Checkbox2 Local $Checkbox3 Local $Combo1 Local $nMsg Local $sIniFile = @ScriptDir & "\Vibor.ini" $Form1 = GUICreate("Form1", 303, 136, 192, 124) $Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 40, 24, 97, 17, $BS_AUTO3STATE) GUICtrlSetState(-1, IniRead($sIniFile, "Settings", "Checkbox1", $GUI_CHECKED)) $Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 40, 48, 97, 17, $BS_AUTO3STATE) GUICtrlSetState(-1, IniRead($sIniFile, "Settings", "Checkbox2", $GUI_UNCHECKED)) $Checkbox3 = GUICtrlCreateCheckbox("Checkbox3", 40, 72, 97, 17, $BS_AUTO3STATE) GUICtrlSetState(-1, IniRead($sIniFile, "Settings", "Checkbox3", $GUI_INDETERMINATE)) $Combo1 = GUICtrlCreateCombo("", 40, 96, 145, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL)) GUICtrlSetData(-1, "1|2|3", IniRead($sIniFile, "Settings", "Combo1", 2)) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Exit(0) |
||
Отправлено: 17:58, 18-09-2017 | #6 |
Старожил Сообщения: 352
|
Профиль | Отправить PM | Цитировать Цитата Iska:
В функции Vosstanovit не знаю как прописать
#include <ButtonConstants.au3> #include <ComboConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> AutoItSetOption("MustDeclareVars", 1) Local $Form1 Local $Checkbox1 Local $Checkbox2 Local $Checkbox3 Local $Combo1 Local $nMsg Local $sIniFile = @ScriptDir & "\Vibor.ini" $Form1 = GUICreate("Form1", 303, 136, 192, 124) $CheckViborOdin = GUICtrlCreateCheckbox("CheckViborOdin", 40, 24, 97, 17, $BS_AUTO3STATE) ;GUICtrlSetState(-1, IniRead($sIniFile, "Settings", "Checkbox1", $GUI_CHECKED)) Vosstanovit("CheckViborOdin") $Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 40, 48, 97, 17, $BS_AUTO3STATE) ;GUICtrlSetState(-1, IniRead($sIniFile, "Settings", "Checkbox2", $GUI_UNCHECKED)) Vosstanovit("CheckViborDva") $Checkbox3 = GUICtrlCreateCheckbox("Checkbox3", 40, 72, 97, 17, $BS_AUTO3STATE) ;GUICtrlSetState(-1, IniRead($sIniFile, "Settings", "Checkbox3", $GUI_INDETERMINATE)) Vosstanovit("CheckViborTri") $Combo1 = GUICtrlCreateCombo("", 40, 96, 145, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL)) ;GUICtrlSetData(-1, "1|2|3", IniRead($sIniFile, "Settings", "Combo1", 2)) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Exit (0) Func Vosstanovit($4toVosstanovit) $Vibor = 4 If IniRead($sIniFile, "Settings", $4toVosstanovit, 4) = 1 Then $Vibor = $GUI_CHECKED ElseIf IniRead($sIniFile, "Settings", $4toVosstanovit, 4) = 2 Then $Vibor = $GUI_INDETERMINATE ElseIf IniRead($sIniFile, "Settings", $4toVosstanovit, 4) = 4 Then $Vibor = $GUI_UNCHECKED EndIf GUICtrlSetState($ID, $Vibor) ;ТУТ НЕ ЗНАЮ КАК $ID ПРОПИСАТЬ CheckViborOdin (к примеру) EndFunc |
|
Отправлено: 18:20, 18-09-2017 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать -TRM-, сначала используйте тэг «code» и лишь затем обрамляйте его спойлером. И используйте банальные отступы при оформлении кода.
Цитата -TRM-:
Цитата -TRM-:
|
||
Отправлено: 18:36, 18-09-2017 | #8 |
Старожил Сообщения: 352
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 11:19, 20-09-2017 | #9 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Понятней не стало. Какую «переменную»? Где «найти»? Какой «какой-то» параметр? Чему «назначить»? Как связаны эти два понятия?
Опишите алгоритм словами. |
Отправлено: 12:06, 20-09-2017 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - XCOPY с переменными из ini-файла. | Gradspb | Скриптовые языки администрирования Windows | 6 | 19-05-2016 13:10 | |
Delphi - [решено] Загрузка данных из ini | novashdima | Программирование и базы данных | 6 | 13-02-2013 08:45 | |
[решено] Считать инфу из разделов INI файла в разные массивы. | FlatX007 | AutoIt | 18 | 23-12-2010 22:57 | |
CMD/BAT - [решено] Bat с перебором параметров из файла | Доктор Ливси | Скриптовые языки администрирования Windows | 1 | 30-09-2010 16:12 | |
[решено] синхронизировать время из ini файла | Lodoss | AutoIt | 1 | 26-03-2009 10:23 |
|