Code (Отобразить)
CODE:
#define WS_VISIBLE 0x10000000
#define WS_CHILD 0x40000000
#define WS_BORDER 0x00800000
#define ES_MULTILINE 0x0004
#define ES_WANTRETURN 0x1000
#define ES_AUTOVSCROLL 0x0040
#define ES_AUTOHSCROLL 0x0080
#define TRUE 1
#define WM_SETFONT 0x0030
#define RUSSIAN_CHARSET 204
#define ES_MULTILINE 0x0004 // Многострочный режим
#define ES_WANTRETURN 0x1000 // Обработка Enter как переноса строки
#define ES_AUTOVSCROLL 0x0040 // Автоматическая вертикальная прокрутка
#define WS_VSCROLL 0x00200000 // Вертикальная полоса прокрутки
#define ES_AUTOHSCROLL 0x0080 // Автоматическая горизонтальная прокрутка
#define WS_HSCROLL 0x00100000 // Горизонтальная полоса прокрутки
#define CBN_SELCHANGE 1
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll");
external(INT, "GetWindowText", "GetWindowTextA", "User32.dll");
external(INT, "SetWindowText", "SetWindowTextA", "User32.dll");
external(INT, "CreateFont", "CreateFontA", "Gdi32.dll");
external(INT, "GetWindowRect", "GetWindowRect", "User32.dll");
external(INT, "DeleteObject", "DeleteObject", "Gdi32.dll");
external(INT, "DeleteFile", "DeleteFileA", "kernel32.dll");
external(INT, "GetPrivateProfileString", "GetPrivateProfileStringA", "kernel32.dll");
external(INT, "WritePrivateProfileString", "WritePrivateProfileStringA", "kernel32.dll");
int h_font;
string rn = formatic(13)+formatic(10);
int dialogPosX_0 = 567, dialogPosY_0 = 245;
string path_settings_0 = tempfolder() + "config_file_0.ini";
int edit0[1];
string text_edit0[1];
text_edit0[0] = "Edit0";
createdialog(0);
showdialog(0, "Диалог0", dialogPosX_0, dialogPosY_0, 776, 520, 4, 1);
loop()
{
// тут нужный код
sleep(10);
}
end_0:;
function getmessage(0, WM_CREATE)
{
int i;
load_config_0(); // функция для загрузки настроек
h_font = CreateFont(-12, 0, 0, 0, 400, 0, 0, 0, RUSSIAN_CHARSET, 0, 0, 0, 0, "Arial");
edit0[0] = CreateWindow(0, "EDIT", text_edit0[0], WS_VISIBLE | WS_CHILD | WS_BORDER | ES_MULTILINE | ES_WANTRETURN | ES_AUTOVSCROLL | WS_VSCROLL | ES_AUTOHSCROLL | WS_HSCROLL, 8, 0, 752, 480, gethwnd(0), 0, 0, 0);
for(i=0; i<1; i++)sendmessage(WM_SETFONT, h_font, TRUE, formatiw(edit0[i]));
}
function getmessage(0, WM_COMMAND)
{
int i;
char c_text_edit[999];
for(i=0; i<1; i++) // обработка нажатий edit
{
if(message.lparam == edit0[i])
{
GetWindowText(edit0[i], address(#c_text_edit[0]), sizearray(c_text_edit));
text_edit0[i] = format(#c_text_edit[0]);
return;
}
}
}
function getmessage(0, WM_CLOSE)
{
save_config_0(); // вызов функции, котороая сохранит настройки в ini файл
DeleteObject(h_font);
goto global end_0; // переход в метке
// close(); // закрыть кибор
}
function save_config_0() // функция для сохранения настроек
{
int i, rect_window[4];
DeleteFile(path_settings_0);
GetWindowRect(gethwnd(0), address(#rect_window[0]));
WritePrivateProfileString("DialogPosition", "dialogPosX", format(rect_window[0]), path_settings_0);
WritePrivateProfileString("DialogPosition", "dialogPosY", format(rect_window[1]), path_settings_0);
if(fopen (tempfolder()+"Description.txt", "w")!=0)
{
fwrite (text_edit0[0]);
fclose();
}
}
function load_config_0() // функция для загрузки настроек
{
int i;
char text[999];
if(fopen(path_settings_0, "r"))fclose();
else return;
if(GetPrivateProfileString("DialogPosition", "dialogPosX", 0, address (#text[0]), sizearray(text), path_settings_0))dialogPosX_0 = formatsn(format(#text[0]));
if(GetPrivateProfileString("DialogPosition", "dialogPosY", 0, address (#text[0]), sizearray(text), path_settings_0))dialogPosY_0 = formatsn(format(#text[0]));
if(fopen (tempfolder()+"Description.txt", "r")!=0)
{
freadall(#text_edit0[0]);
fclose();
}
}
#define WS_CHILD 0x40000000
#define WS_BORDER 0x00800000
#define ES_MULTILINE 0x0004
#define ES_WANTRETURN 0x1000
#define ES_AUTOVSCROLL 0x0040
#define ES_AUTOHSCROLL 0x0080
#define TRUE 1
#define WM_SETFONT 0x0030
#define RUSSIAN_CHARSET 204
#define ES_MULTILINE 0x0004 // Многострочный режим
#define ES_WANTRETURN 0x1000 // Обработка Enter как переноса строки
#define ES_AUTOVSCROLL 0x0040 // Автоматическая вертикальная прокрутка
#define WS_VSCROLL 0x00200000 // Вертикальная полоса прокрутки
#define ES_AUTOHSCROLL 0x0080 // Автоматическая горизонтальная прокрутка
#define WS_HSCROLL 0x00100000 // Горизонтальная полоса прокрутки
#define CBN_SELCHANGE 1
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll");
external(INT, "GetWindowText", "GetWindowTextA", "User32.dll");
external(INT, "SetWindowText", "SetWindowTextA", "User32.dll");
external(INT, "CreateFont", "CreateFontA", "Gdi32.dll");
external(INT, "GetWindowRect", "GetWindowRect", "User32.dll");
external(INT, "DeleteObject", "DeleteObject", "Gdi32.dll");
external(INT, "DeleteFile", "DeleteFileA", "kernel32.dll");
external(INT, "GetPrivateProfileString", "GetPrivateProfileStringA", "kernel32.dll");
external(INT, "WritePrivateProfileString", "WritePrivateProfileStringA", "kernel32.dll");
int h_font;
string rn = formatic(13)+formatic(10);
int dialogPosX_0 = 567, dialogPosY_0 = 245;
string path_settings_0 = tempfolder() + "config_file_0.ini";
int edit0[1];
string text_edit0[1];
text_edit0[0] = "Edit0";
createdialog(0);
showdialog(0, "Диалог0", dialogPosX_0, dialogPosY_0, 776, 520, 4, 1);
loop()
{
// тут нужный код
sleep(10);
}
end_0:;
function getmessage(0, WM_CREATE)
{
int i;
load_config_0(); // функция для загрузки настроек
h_font = CreateFont(-12, 0, 0, 0, 400, 0, 0, 0, RUSSIAN_CHARSET, 0, 0, 0, 0, "Arial");
edit0[0] = CreateWindow(0, "EDIT", text_edit0[0], WS_VISIBLE | WS_CHILD | WS_BORDER | ES_MULTILINE | ES_WANTRETURN | ES_AUTOVSCROLL | WS_VSCROLL | ES_AUTOHSCROLL | WS_HSCROLL, 8, 0, 752, 480, gethwnd(0), 0, 0, 0);
for(i=0; i<1; i++)sendmessage(WM_SETFONT, h_font, TRUE, formatiw(edit0[i]));
}
function getmessage(0, WM_COMMAND)
{
int i;
char c_text_edit[999];
for(i=0; i<1; i++) // обработка нажатий edit
{
if(message.lparam == edit0[i])
{
GetWindowText(edit0[i], address(#c_text_edit[0]), sizearray(c_text_edit));
text_edit0[i] = format(#c_text_edit[0]);
return;
}
}
}
function getmessage(0, WM_CLOSE)
{
save_config_0(); // вызов функции, котороая сохранит настройки в ini файл
DeleteObject(h_font);
goto global end_0; // переход в метке
// close(); // закрыть кибор
}
function save_config_0() // функция для сохранения настроек
{
int i, rect_window[4];
DeleteFile(path_settings_0);
GetWindowRect(gethwnd(0), address(#rect_window[0]));
WritePrivateProfileString("DialogPosition", "dialogPosX", format(rect_window[0]), path_settings_0);
WritePrivateProfileString("DialogPosition", "dialogPosY", format(rect_window[1]), path_settings_0);
if(fopen (tempfolder()+"Description.txt", "w")!=0)
{
fwrite (text_edit0[0]);
fclose();
}
}
function load_config_0() // функция для загрузки настроек
{
int i;
char text[999];
if(fopen(path_settings_0, "r"))fclose();
else return;
if(GetPrivateProfileString("DialogPosition", "dialogPosX", 0, address (#text[0]), sizearray(text), path_settings_0))dialogPosX_0 = formatsn(format(#text[0]));
if(GetPrivateProfileString("DialogPosition", "dialogPosY", 0, address (#text[0]), sizearray(text), path_settings_0))dialogPosY_0 = formatsn(format(#text[0]));
if(fopen (tempfolder()+"Description.txt", "r")!=0)
{
freadall(#text_edit0[0]);
fclose();
}
}