sproxy
Full Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору FullHD 12:01 27-03-2009 Цитата: Добрый день . Ктото может подсказать как такое зделать и может ли такое зделать AutoIT . Хочю зделать в GUI элемент Input ,чтобы в него из текстового файла \cfg\config.cfg из строчки : Цитата: name "Player1" Выводилось Player1 , и кнопку чтобы например изменить в Input например на Igrok и нажав на нее измениться на: Цитата: name "Igrok" Возможно ли такое . Если кто умеет напишите пример пожалуста . | Сделать возможно так: Код: #region: - Include #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #endregion #region: - Option Opt('GUIOnEventMode', 1) Opt('MustDeclareVars', 1) Opt('TrayIconDebug', 1) Opt('TrayIconHide', 0) #endregion #region: - Global Global $sIniPath = @ScriptDir & '\cfg\config.cfg' If NOT FileExists($sIniPath) Then _ DirCreate(@ScriptDir & '\cfg') Global $sCfgName _Ini_Read('sCfgName') Global $hWinMain, $hName #endregion #region: - Главное окно $hWinMain = GUICreate('Test', 400, 400, -1, -1) GUISetOnEvent($GUI_EVENT_CLOSE, '_Pro_Exit') GUICtrlCreateLabel('Имя игрока:', 10, 23, 80, 18) GUICtrlSetFont(-1, 9.5, 700) $hName = GUICtrlCreateInput($sCfgName, 10, 23+18, 150, 20) GUICtrlCreateButton('Сохранить', 10+150+2, 23+18-1, 70, 22) GUICtrlSetOnEvent(-1, '_Write_Name') #endregion #region: - После создания всех GUI GUISetState(@SW_SHOW, $hWinMain) #endregion #region: - Sleep, Exit While 1 Sleep(10) WEnd Func _Pro_Exit() Exit EndFunc #endregion ;~ Ini Func _Ini_Read($sWhatRead) Local $Temp Switch $sWhatRead Case 'sCfgName' $sWhatRead = StringStripWS(IniRead ($sIniPath , 'Main', 'Name', ''), 1+2) If StringStripWS($sWhatRead, 8) == '' Then $sWhatRead = 'Player' IniWrite($sIniPath, 'Main', 'Name', '"' & $sWhatRead & '"') EndIf Assign('sCfgName', $sWhatRead) Return $sWhatRead EndSwitch EndFunc Func _Ini_Write($sWhatSection, $sWhatWrite) Local $sWhatKey = StringTrimLeft($sWhatWrite, 4) If StringLeft($sWhatWrite, 1) == 'i' Then $sWhatWrite = Eval($sWhatWrite) Else $sWhatWrite = '"' & Eval($sWhatWrite) & '"' EndIf IniWrite($sIniPath, $sWhatSection, $sWhatKey, $sWhatWrite) EndFunc Func _Write_Name() Local $sName = StringStripWS(GUICtrlRead($hName), 1+2) If StringStripWS($sName, 8) == '' Then MsgBox(32, 'Ошибка', 'Пожалуйста, введите имя игрока') $sCfgName = '' GUICtrlSetData($hName, $sCfgName) Return EndIf $sCfgName = $sName _Ini_Write('Main', 'sCfgName') EndFunc | Добавлено: ziii 10:30 27-03-2009 Цитата: Скажите пожалуйста основные отличия AutoIT от nnCron? | nnCron - довольно не плох. 1. Хотя на первый взгляд "on line документации" он немного ограницен в возможностях (пример: не нашел работу с ini, а реестр?). 2. В AutoIt возможно создать конечный самодостаточный exe файл. Как понимаю, в nnCron для выполнения сценария всегда нужен исполнитель (интерпритатор nnCron.exe). 3.+ на первый взгляд, все, что можно сделать с помощью nnCron - можно реализовать с помощью AutoIt 4. С помощью AutoIt можно создовать программы с GUI интерфейсом, что мега круто т удобно )) 5. И всетаки, nnCron - это программа "планировщик и менеджер", а AutoIt - это "это язык для написания сценариев", соотвественно, AutoIt более гибок в возможностях. А использовать, имхо, думаю нужно именно то - что наилучше соответсвует/подходит для выполнения задачи: по качеств и возможностям - как предоставляемым, так и имеющимся у Вас. | Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 13:54 27-03-2009 | Исправлено: sproxy, 14:13 27-03-2009 |
|