dulger |
Отправлено: 21 Марта, 2019 - 22:08:50
|
Участник
Покинул форум
Сообщений всего: 70
Дата рег-ции: Февр. 2017
Репутация: 0
|
Kibor пишет: Если надо сохранять настройки именно для Кибор, то такой код позволяет сохранять введенные настройки и при следующем запуске их считывать.
CODE:int n1;
int n2;
n1=formatsn(getcontrol(EDIT_0));
n2=formatsn(getcontrol(EDIT_1));
if (fopen ("C:\config.txt", "w")!=0)
{
fwrite(n1);fwrite (ENDL);
fwrite(n2);
fclose();
}
/////////////////////////////////
messagebox (n1);
messagebox (n2);
INITDIALOG
{
if (fopen ("C:\config.txt", "r")!=0)
{
fread(n1);
fread(n2);
fclose();
sendcontrol(EDIT_0, format(n1));
sendcontrol(EDIT_1, format(n2));
}
}
CREATE_INTERFACE
{
DIALOG "Название окна" 237 180 //РазмерX РазмерY
BUTTONSCRIPT "Запустить" 125 121 100 25 //ПозицияX ПозицияY РазмерX РазмерY
STATIC_0 "Настройка первая" 10 10 120 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_0 "5" 115 8 110 18 //ПозицияX ПозицияY РазмерX РазмерY
STATIC_1 "Настройка вторая" 10 30 120 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_1 "25" 115 28 110 18 //ПозицияX ПозицияY РазмерX РазмерY
}
А как подобное можно сделать с таким интерфейсом. У меня что-то не получается. Помогите пожалуйста
CODE:CREATE_INTERFACE
{
DIALOG "Tera" 337 350 //РазмерX РазмерY
BUTTONSCRIPT "Запустить" 125 270 100 25 //ПозицияX ПозицияY РазмерX РазмерY
//Добавление контролов управления ......
CHECK_1 0 /*Выключена*/ "Чек варов" 10 15 335 18 //ПозицияX ПозицияY РазмерX РазмерY
CHECK_2 0 /*Выключена*/ "Собирать лут" 10 40 335 18 //ПозицияX ПозицияY РазмерX РазмерY
CHECK_3 0 /*Выключена*/ "Рандомный фарм" 10 65 335 18 //ПозицияX ПозицияY РазмерX РазмерY
STATIC_0 "Путь к лаунчеру игры" 135 100 330 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_0 "D:\Games\Tera RU\Destiny\launcher\launcher.exe" 10 100 120 18 //
STATIC_1 "Время отдыха в млс" 135 135 330 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_1 "60000" 10 135 120 18 //
COMBO_0 0 /*Начальный выбор*/ "Долина смерти" | "Горящие равнины" | "Снежная вершина" 10 175 212 200 //ПозицияX ПозицияY РазмерX РазмерY_выпадающий список
} |
|
|
Zireael |
Отправлено: 22 Марта, 2019 - 01:19:20
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: А как подобное можно сделать с таким интерфейсом.
code (Отобразить)CODE:int check1, check2, check3;
string edit0, edit1;
string combo0;
check1=getcontrol(CHECK_1);
check2=getcontrol(CHECK_2);
check3=getcontrol(CHECK_3);
edit0=getcontrol(EDIT_0);
edit1=getcontrol(EDIT_1);
combo0=getcontrol(COMBO_0);
if (fopen ("C:\config.txt", "w")!=0)
{
fwrite(check1);fwrite (ENDL);
fwrite(check2);fwrite (ENDL);
fwrite(check3);fwrite (ENDL);
fwrite(edit0);fwrite (ENDL);
fwrite(edit1);fwrite (ENDL);
fwrite(combo0);
fclose();
}
/////////////////////////////////
INITDIALOG
{
if (fopen ("C:\config.txt", "r")!=0)
{
fread(check1);
fread(check2);
fread(check3);
freadline(edit0);
freadline(edit1);
freadline(combo0);
fclose();
sendcontrol(CHECK_1, check1);
sendcontrol(CHECK_2, check2);
sendcontrol(CHECK_3, check3);
sendcontrol(EDIT_0, edit0);
sendcontrol(EDIT_1, edit1);
sendcontrol(COMBO_0, combo0);
}
}
CREATE_INTERFACE
{
DIALOG "Tera" 337 350 //РазмерX РазмерY
BUTTONSCRIPT "Запустить" 125 270 100 25 //ПозицияX ПозицияY РазмерX РазмерY
//Добавление контролов управления ......
CHECK_1 0 /*Выключена*/ "Чек варов" 10 15 335 18 //ПозицияX ПозицияY РазмерX РазмерY
CHECK_2 0 /*Выключена*/ "Собирать лут" 10 40 335 18 //ПозицияX ПозицияY РазмерX РазмерY
CHECK_3 0 /*Выключена*/ "Рандомный фарм" 10 65 335 18 //ПозицияX ПозицияY РазмерX РазмерY
STATIC_0 "Путь к лаунчеру игры" 135 100 330 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_0 "D:\Games\Tera RU\Destiny\launcher\launcher.exe" 10 100 120 18 //
STATIC_1 "Время отдыха в млс" 135 135 330 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_1 "60000" 10 135 120 18 //
COMBO_0 0 /*Начальный выбор*/ "Долина смерти" | "Горящие равнины" | "Снежная вершина" 10 175 212 200 //ПозицияX ПозицияY РазмерX РазмерY_выпадающий список
} |
|
|
dulger |
Отправлено: 22 Марта, 2019 - 02:42:48
|
Участник
Покинул форум
Сообщений всего: 70
Дата рег-ции: Февр. 2017
Репутация: 0
|
Zireael пишет: Цитата: А как подобное можно сделать с таким интерфейсом.
code (Отобразить)CODE:int check1, check2, check3;
string edit0, edit1;
string combo0;
check1=getcontrol(CHECK_1);
check2=getcontrol(CHECK_2);
check3=getcontrol(CHECK_3);
edit0=getcontrol(EDIT_0);
edit1=getcontrol(EDIT_1);
combo0=getcontrol(COMBO_0);
if (fopen ("C:\config.txt", "w")!=0)
{
fwrite(check1);fwrite (ENDL);
fwrite(check2);fwrite (ENDL);
fwrite(check3);fwrite (ENDL);
fwrite(edit0);fwrite (ENDL);
fwrite(edit1);fwrite (ENDL);
fwrite(combo0);
fclose();
}
/////////////////////////////////
INITDIALOG
{
if (fopen ("C:\config.txt", "r")!=0)
{
fread(check1);
fread(check2);
fread(check3);
freadline(edit0);
freadline(edit1);
freadline(combo0);
fclose();
sendcontrol(CHECK_1, check1);
sendcontrol(CHECK_2, check2);
sendcontrol(CHECK_3, check3);
sendcontrol(EDIT_0, edit0);
sendcontrol(EDIT_1, edit1);
sendcontrol(COMBO_0, combo0);
}
}
CREATE_INTERFACE
{
DIALOG "Tera" 337 350 //РазмерX РазмерY
BUTTONSCRIPT "Запустить" 125 270 100 25 //ПозицияX ПозицияY РазмерX РазмерY
//Добавление контролов управления ......
CHECK_1 0 /*Выключена*/ "Чек варов" 10 15 335 18 //ПозицияX ПозицияY РазмерX РазмерY
CHECK_2 0 /*Выключена*/ "Собирать лут" 10 40 335 18 //ПозицияX ПозицияY РазмерX РазмерY
CHECK_3 0 /*Выключена*/ "Рандомный фарм" 10 65 335 18 //ПозицияX ПозицияY РазмерX РазмерY
STATIC_0 "Путь к лаунчеру игры" 135 100 330 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_0 "D:\Games\Tera RU\Destiny\launcher\launcher.exe" 10 100 120 18 //
STATIC_1 "Время отдыха в млс" 135 135 330 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_1 "60000" 10 135 120 18 //
COMBO_0 0 /*Начальный выбор*/ "Долина смерти" | "Горящие равнины" | "Снежная вершина" 10 175 212 200 //ПозицияX ПозицияY РазмерX РазмерY_выпадающий список
}
Большое человеческое спасибо!!! |
|
|
Zireael |
Отправлено: 29 Марта, 2019 - 01:14:33
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: Какая структура ini файла должна быть?
Цитата: [Section1]
var1=значение_1
var2=значение_2
[Section2]
var1=значение_1
var2=значение_2
Цитата: искать среди них нужный порядковый номер
можно будет обратиться по имени_файла+расширение
Так порядковый номер или имя+расширение? |
|
|
Zireael |
Отправлено: 03 Апреля, 2019 - 11:30:17
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: сохранять и считывать txt файл в директории C:\Users\%UserName%\Documents\config.txt
CODE:external(INT, "GetEnvironmentVariable", "GetEnvironmentVariableA", "Kernel32.dll");
external (INT, "WritePrivateProfileString", "WritePrivateProfileStringA", "kernel32.dll");
char c[256];
GetEnvironmentVariable("USERPROFILE", address(#c[0]), sizearray(c));
messagebox(format(#c[0])+"\Documents\config.ini");
WritePrivateProfileString ("AppName", "Key", "String", format(#c[0])+"\Documents\config.ini"); |
|
|
dulger |
Отправлено: 03 Апреля, 2019 - 15:08:29
|
Участник
Покинул форум
Сообщений всего: 70
Дата рег-ции: Февр. 2017
Репутация: 0
|
Zireael пишет: Цитата: сохранять и считывать txt файл в директории C:\Users\%UserName%\Documents\config.txt
CODE:external(INT, "GetEnvironmentVariable", "GetEnvironmentVariableA", "Kernel32.dll");
external (INT, "WritePrivateProfileString", "WritePrivateProfileStringA", "kernel32.dll");
char c[256];
GetEnvironmentVariable("USERPROFILE", address(#c[0]), sizearray(c));
messagebox(format(#c[0])+"\Documents\config.ini");
WritePrivateProfileString ("AppName", "Key", "String", format(#c[0])+"\Documents\config.ini");
У меня реализовано по вашему примеру вот так
CODE:int check1, check2, check3;
string edit0, edit1;
string combo0;
check1=getcontrol(CHECK_1);
check2=getcontrol(CHECK_2);
check3=getcontrol(CHECK_3);
edit0=getcontrol(EDIT_0);
edit1=getcontrol(EDIT_1);
combo0=getcontrol(COMBO_0);
if (fopen ("C:\config.txt", "w")!=0)
{
fwrite(check1);fwrite (ENDL);
fwrite(check2);fwrite (ENDL);
fwrite(check3);fwrite (ENDL);
fwrite(edit0);fwrite (ENDL);
fwrite(edit1);fwrite (ENDL);
fwrite(combo0);
fclose();
}
/////////////////////////////////
INITDIALOG
{
if (fopen ("C:\config.txt", "r")!=0)
{
fread(check1);
fread(check2);
fread(check3);
freadline(edit0);
freadline(edit1);
freadline(combo0);
fclose();
sendcontrol(CHECK_1, check1);
sendcontrol(CHECK_2, check2);
sendcontrol(CHECK_3, check3);
sendcontrol(EDIT_0, edit0);
sendcontrol(EDIT_1, edit1);
sendcontrol(COMBO_0, combo0);
}
}
CREATE_INTERFACE
{
DIALOG "Tera" 337 350 //РазмерX РазмерY
BUTTONSCRIPT "Запустить" 125 270 100 25 //ПозицияX ПозицияY РазмерX РазмерY
//Добавление контролов управления ......
CHECK_1 0 /*Выключена*/ "Чек варов" 10 15 335 18 //ПозицияX ПозицияY РазмерX РазмерY
CHECK_2 0 /*Выключена*/ "Собирать лут" 10 40 335 18 //ПозицияX ПозицияY РазмерX РазмерY
CHECK_3 0 /*Выключена*/ "Рандомный фарм" 10 65 335 18 //ПозицияX ПозицияY РазмерX РазмерY
STATIC_0 "Путь к лаунчеру игры" 135 100 330 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_0 "D:\Games\Tera RU\Destiny\launcher\launcher.exe" 10 100 120 18 //
STATIC_1 "Время отдыха в млс" 135 135 330 18 //ПозицияX ПозицияY РазмерX РазмерY
EDIT_1 "60000" 10 135 120 18 //
COMBO_0 0 /*Начальный выбор*/ "Долина смерти" | "Горящие равнины" | "Снежная вершина" 10 175 212 200 //ПозицияX ПозицияY РазмерX РазмерY_выпадающий список
}
Можете подкорректировать этот вариант? |
|
|
|