Получение координат курсора при нажатии левой клавиши мыши - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Короче, чтоб долго тут не повествовать, объясните, почему не работает код:
uses mouse, crt;
begin
        initmouse;
        repeat
                if (getmousebuttons =  mouseleftbutton)  then
                        writeln(getmousex, ' ' , getmousey, ' ');
        until keypressed;
        donemouse;
end.
ХОЧУ: координаты курсора при нажатии левой клавиши мыши ПОЛУЧАЮ НА ДЕЛЕ: ничего иногда может вывести координаты, но длится это считанные секунды, дальше - тишина...

Решение задачи: «Получение координат курсора при нажатии левой клавиши мыши»

textual
Листинг программы
uses mouse;
var
    cursor : tmouseevent;
begin
    initmouse;
    showmouse;
 
    repeat
        writeln(getmousebuttons, ' ', getmousex, ' ', getmousey);
        {while pollmouseevent(cursor) do
            getmouseevent(cursor);}
    until false;
 
    donemouse;
end.

Объяснение кода листинга программы

  1. Подключение модуля mouse.
  2. Объявление переменной cursor типа tmouseevent.
  3. Инициализация модуля mouse.
  4. Отображение курсора на экране.
  5. Вход в цикл.
  6. Вывод на экран информации о состоянии кнопок мыши и координатах курсора.
  7. Вызов функции getmouseevent для получения следующего события мыши.
  8. Проверка условия для выхода из цикла.
  9. Завершение работы с модулем mouse.
  10. Завершение работы с курсором.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.8 из 5
Похожие ответы