Render.ru

Вывод/ввод данных .INI

LuVeNa

Активный участник
Рейтинг
7
#1
Всем привет,
Помогите пожалуйста, голову уже поломал, а решение однозначно где-то на виду лежит
есть такой код и по нему пара вопросов стоит

1. переменная aaa считывается в формате string, поэтому ее не удается использовать для SetDialogPos
каким путем это решается?
2. не пойму почему не работает on rollout01 closed do - не хочет записывать данные в ini
пробовал использовать moved, тогда вылетает ошибка ((
3. ни в какую не работает цикл, который закомментирован if ( doesFileExist inipath )
причем работает, если запустить отдельно это кусок

Заранее СПАСИБО! :)


Код:
(
global inipath
global rollout01_pos


try(destroyDialog rollout01)catch()

rollout rollout01 "Rollout 01" category:10
(
  button btn_pressme "Press Me"


    global  inipath = (getdir #userscripts) + "\_test.INI"   
    
    global aaa = getINISetting inipath "Settings" "DialogPos"
    

--     if ( doesFileExist inipath ) then (print "ini tratata")
--     else
--     (
--         MessageBox "ini file does not exist...creating now"
--         fff = createFile inipath
--         close fff
--     )   
    

    
on rollout01 closed do
(
setINISetting inipath "Settings" "DialogPos" (getDialogPos rollout01 as string)
)   

on btn_pressme pressed do
(
setINISetting inipath "Settings" "DialogPos" (getDialogPos rollout01 as string)
)   


    
)
CreateDialog rollout01

try (SetDialogPos rollout01 aaa)catch()



)
 

LuVeNa

Активный участник
Рейтинг
7
#2
1е победил :pompus:
global aaa = execute (getINISetting inipath "Settings" "DialogPos")

еще две разрешить )
 

LuVeNa

Активный участник
Рейтинг
7
#3
2е победил
Код:
on rollout01 moved pos do
(
setINISetting inipath "Settings" "DialogPos" (getDialogPos rollout01 as string)
)
 

LuVeNa

Активный участник
Рейтинг
7
#4
3е тоже ))
вынес цикл за пределы роллаута

Код:
(
global inipath
global rollout01_pos

    if ( doesFileExist inipath ) then (print "ini tratata")
    else
    (
        MessageBox "ini file does not exist...creating now"
        local fff = createFile inipath
        close fff
    )       

try(destroyDialog rollout01)catch()

rollout rollout01 "Rollout 01" category:10
(
  button btn_pressme "Press Me"


    global inipath = (getdir #userscripts) + "\_test.INI"   
    
    global rollout01_pos = execute (getINISetting inipath "Settings" "DialogPos")
    


    
on rollout01 moved pos do
(
setINISetting inipath "Settings" "DialogPos" (getDialogPos rollout01 as string)
)

on btn_pressme pressed do
(
setINISetting inipath "Settings" "DialogPos" (getDialogPos rollout01 as string)
)   


    
)
CreateDialog rollout01

try (SetDialogPos rollout01 rollout01_pos)catch()



)
 
Сверху