Если вы хотите цикл в Visual C ++, используйте таймер и установите для него любую скорость тика.Затем добавьте функцию галочки (каждый раз, когда она обновляет эту функцию). Это будет ваша функция обновления, поэтому переместите туда свой код.Возможно, вы захотите добавить это в конце отметки таймера:
this->Refresh();
Это в основном обновляет экран до координат
Во-вторых, чтобы проверить, на какой стороне экрана включенчто-то вроде Visual C ++, вам нужно знать размер вашего окна.
Допустим, мое окно 100X100 (х и у).Мы знаем, что последние x 50 - это левая сторона экрана, а раньше - правая.Таким образом, вы можете сделать
if(x > 50){
//do stuff to do with right side
}else if(x < 50){
//do stuff to do with left side
}
Для ввода вы можете добавить текстовые поля.Вы можете написать x и y, затем после отправки кнопки входные данные преобразуются в 2 типа int (inputx и inputy).В функции обновления это может выглядеть следующим образом:
//inputx is 10, inputy is 20
bool xdone = false;
bool ydone = false;
if(xdone == false){
if(inputx < 0){ // checks if x is negative
x = x - 1; //If the input was negative, it will start decreasing
}else if(inputx > 0){// checks if x is positive
x = x + 1;//If the input was positive, it will start increasing
}
}
if(ydone == false){
if(inputy < 0){ // checks if y is negative
y = y - 1; //If the input was negative, it will start decreasing
}else if(inputy > 0){// checks if y is positive
y = y + 1;//If the input was positive, it will start increasing
}
}
if(inputx == x || inputy == y){
this->[NAME OF TIMER]->Enabled = false;
}
if(inputx == x){
xdone = true;
}
if(inputy == y){
ydone = true;
}
x = inputx;
y = inputy;
this->Refresh();
Если я получу что-то не так для любого, кто знает, не стесняйтесь поправлять меня.