1. D1zo12.03.2025 в 17:04от
  2. A777MP17812.03.2025 в 17:03от
Загрузка...

[c#]нужна помощь с кодом

Тема в разделе "С/С++/Pascal/Delphi", создана пользователем nuzze, 04.06.2017.

  1. nuzze

    nuzze

    Статус:
    Оффлайн
    Регистрация:
    13.11.14
    Сообщения:
    41
    Репутация:
    59 +/-
    Привет ребятки,помогите с кое чем.
    Есть класс,который отвечает за перемещение курсора по координатам X,Y
    Код:
    Cursor.Position = new Point(500, 500);
    [​IMG]
    Я хочу сделать ввод координат при помощи textBox.что бы пользователь мог самостоятельно прописывать коор.но вот что-то у меня совсем не выходит.
    Люди добрые,помогите.
    Заранее спасибо.
     
    Последнее редактирование: 04.06.2017
  2. DeLIT

    DeLIT

    Статус:
    Оффлайн
    Регистрация:
    08.04.12
    Сообщения:
    4.818
    Репутация:
    5.499 +/-
    Насчет шарпа не знаю, но могу сказать с какими проблема можно столкнуться при вводе в одно текстовое поле.
    Считывая строку, ты преобразуешь её к целочисленному типу. Причём должно быть ограничение на ввод данных с клавиатуры, т.к. считав простую букву или символ - получишь ошибку конвертации..
    Поэтому либо сделать два отдельных поля, либо через окно ввода inputBox (с алгоритмом ограничения нажимаемых клавиш клавиатуры от 0..9)
    Вот здесь статья с описанием реализации алгоритма:
    http://vscode.ru/prog-lessons/vvod-v-textbox-tolko-tsifr-neobhodimyih-simvolov-c.html
     
    Последнее редактирование: 04.06.2017
  3. nuzze

    nuzze

    Статус:
    Оффлайн
    Регистрация:
    13.11.14
    Сообщения:
    41
    Репутация:
    59 +/-
    Лады,буду пробовать,спасибо.
     
  4. nuzze

    nuzze

    Статус:
    Оффлайн
    Регистрация:
    13.11.14
    Сообщения:
    41
    Репутация:
    59 +/-
    Решил свою проблему.
    Может кому и пригодиться.)
    Код:
                    string[] source = textBox3.Text.Split(',');
                    int x = Convert.ToInt32(source[0].Replace("X -", "0"));
                    int y = Convert.ToInt32(source[1].Replace("Y -", "0"));
                    Cursor.Position = new Point(x, y);
    
     
  5. Лакер

    Лакер

    Статус:
    Оффлайн
    Регистрация:
    06.10.13
    Сообщения:
    155
    Репутация:
    114 +/-
    Если собираешься производить большое количество перемещений в единицу времени, то советую вводить данные сухо например 555,654 так как Replace трудоёмкая функция, ну и не создавать каждый раз объект типа Поинт
     
  6. nuzze

    nuzze

    Статус:
    Оффлайн
    Регистрация:
    13.11.14
    Сообщения:
    41
    Репутация:
    59 +/-
    Да,я знаю.Так и производиться ввод.
    [​IMG]