Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (1): [1]   

> Описание: Как это можно сделать и почему так происходит?
Nikanr
Отправлено: 14 Августа, 2019 - 22:23:18
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 231
Дата рег-ции: Март 2019  
Репутация: 5




Здравствуйте, возникло несколько вопросов по полю "EDIT" из external и Кибор:

1. В поле "EDIT" вводится некоторое количество символов через "Enter". Как удалить символ новой строки? Нижеприведенный способ не работает.

CODE:
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll" );
external(INT, "GetWindowText", "GetWindowTextA", "User32.dll" );

int baton, okno;
char buffet[99];
string txt;

createdialog(0);
showdialog(0, "Диалог",250, 250, 250, 250, 1, 1);

loop()pause(1);

function getmessage(0, WM_CREATE)
{
okno = CreateWindow(0, "EDIT", "", 4+128+4096+1048576+2097152+8388608+1342177280, 14, 35, 100, 100, gethwnd(0), 0, 0, 0);
baton= CreateWindow(0, "BUTTON", "Вывести", 8192+1342177280, 135, 100, 80, 30, gethwnd(0), 0, 0, 0);
}

function getmessage(0, WM_COMMAND)
{
if(message.lparam == baton){
GetWindowText(okno, address(#buffet[0]), sizearray(buffet));
txt=format(#buffet[0]);
regexreplace(-1, #txt, txt, "\n", "");
messagebox(txt);
}
}


2. Допустим мы так же вводим некоторое количество символов через "Enter" в поле "EDIT". Почему символ новой строки в text_edit0[0] удаляется и это видно на самом EDIT,
но messagebox выводится с символом новой строки?

CODE:
int pos_size_button0[1][4];
string text_button0[1];
int flag_button0[1];

pos_size_button0[0][0]=51; pos_size_button0[0][1]=125; pos_size_button0[0][2]=100; pos_size_button0[0][3]=20;
text_button0[0]="Вывести";

int pos_size_edit0[1][4];
string text_edit0[1];

pos_size_edit0[0][0]=26; pos_size_edit0[0][1]=21; pos_size_edit0[0][2]=146; pos_size_edit0[0][3]=83;
text_edit0[0]="";

createdialog(0, BUTTON, #pos_size_button0[0][0], #text_button0[0], #flag_button0[0] |
EDIT, #pos_size_edit0[0][0], #text_edit0[0]);


showdialog(0, "Диалог", 335, 390, 205, 218, 1, 0);
enabletimer(0);

string most;


loop()pause(1);


CREATE_TIMER(0, 10){
if(flag_button0[0]>0){
flag_button0[0]=0;
regexreplace(-1, #text_edit0[0], text_edit0[0], "\n", "");
messagebox(text_edit0[0]);
}
}


Причем если мы сменим указатель с
CODE:
#text_edit0[0]

на
CODE:
#most


То на самом EDIT как и в messagebox мы так же не увидим, что что то поменялось.
 
 Top
Kibor
Отправлено: 14 Августа, 2019 - 22:30:28
Post Id



Администратор
Эксперт


Просматривает форум
Сообщений всего: 8226
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




CODE:
regexreplace(-1, ................, "\r\n", "");
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by