007wan |
Отправлено: 09 Июля, 2017 - 16:09:50
|
Эксперт
Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017
Репутация: -2
|
Как насчёт сделать специальную функцию, которая будет добавлять кусок кода, и заодно избавиться от лишнего кода в программе, используя простую команду:
синтаксис:
string a[+] или [-]//добавляет или игнорирует выделенный текст.
[+а//начала выделения
+а]//конец выделения
[+a+]//добавить туда, куда хотите добавить копию выделенного кода.
ИЛИ
[-а//начала выделения
-а]//конец выделения
[-a-]//добавить туда, куда хотите добавить копию выделенного кода.
Я объясню конкретно зачем нужна эта функция:
например, есть оба случая, когда галка равна 1 и галка равна 0.
когда галка равна 1: идет поиск изображений(длинный код).
когда галка равна 0:идет поиск изображений+звук(beep), но копировать громадный код поиска изображений , займет много места и можно запутаться, тогда отмечаем код в первом случаи и вставляем переменную, которая копировала код в первом случаи.
Использовать эту функцию можно для таких примеров.
Сам пример (Отобразить)
CODE:
string a[+];
if (flag_check0[0]==1)
{//галка 1
//Отмечаем код, который хотим видеть в другом случаи(иначе)
[+а//переменная началу выделения текста.
int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;
int Image_0_KIB[500][500];
start_();
findimage_(#Image_0_KIB[0][0], 0, 0, 0, 0, 0, 0, 0, -1, 0, 100, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB);
function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}
function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int p3, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
int timKIB, sumKIB, xKIB, yKIB;
pause(p1);
sumKIB=0;
if (t!=1) timKIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, -1); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-timKIB<t){sleep(20); goto a;}
return 0;
e: sumKIB=sum; xKIB=x[0]; yKIB=y[0];
pause(p2);
if (m==1){mouse(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
if (m==10){mousemove(xs+xKIB+xm, ys+yKIB+ym); pause(p3);}
return sumKIB;
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\Image_0.bmp");
}
а+]//переменнная конца выделения текста
}//галка 1
else//иначе
{//иначе
[+a+]//переменная, которая добавляет выделенный код.
//зато не пришлось копировать большой код поиска изображений.
beep(100, 200);//звук
}//иначе
В первом случаи, когда галка ==1, идет поиск изображений+звук.
Во-втором случаи, тоже саамое, но уже звука нету, т.е, что бы не копировать код звука, можно придумать такую функцию, которую я придумал, я уверен, что звук копировать не составит труда в обра случая, но бывают большущие куски кода, когда придется копировать громадные куски в обоих случаях(когда нажата и иначе)/
(Отредактировано автором: 09 Июля, 2017 - 16:12:49) |
|
|
Dantes3000 |
Отправлено: 10 Июля, 2017 - 17:01:17
|
Эксперт
Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016
Репутация: 58
|
спойлер (Отобразить)фун(1); //ищем и пищим
фун(0); //ищем и не пищим
фун(231241); //тоже не пищим
function фун(int a)
{
if(findimage_(#Image_0_KIB[0][0], 0, 0, 0, 0, 0, 0, 0, -1, 0, 100, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)!=0)
{
if(a==1)
{
beep(1000, 200);
}
}
}
или просто вот такая функция
спойлер (Отобразить)function фун()
{
if(findimage_(#Image_0_KIB[0][0], 0, 0, 0, 0, 0, 0, 0, -1, 0, 100, 1, 0, 0, ex_KIB, ey_KIB, #sum_KIB, #x_KIB, #y_KIB)!=0)
{
if(flag_check0[0]==1)
{
beep(1000, 200);
}
}
} (Отредактировано автором: 10 Июля, 2017 - 17:07:59) |
|
|
|