На нашем сайте мы используем cookie для сбора информации технического характера и обрабатываем IP-адрес вашего местоположения. Продолжая использовать этот сайт, вы даете согласие на использование файлов cookies. Здесь вы можете узнать, как мы пользуемся файлами cookies.
Я согласен
логотип upread.ru

Как изменить позицию курсора на C#



В этой заметке мы научимся изменять позицию курсора на экране на C# и поближе познакомимся с бесплатной средой разработки на этом языке – SharpDevelop.

Итак, нам требуется с помощью программы менять координаты указателя мыши (курсора) на экране нашего компьютера. На самом деле это просто. В среде SharpDevelop выбираем «Файл» - «Создать» - «Проект…» - здесь можно выбрать тип создаваемого проекта. Для своей программы «Бегающий курсор» я выбрал «Приложение NotifyIcon» - получается проект, который автоматически создает программу со значком в области уведомлений на панели задач:



Как видите, здесь же вы можете выбрать версию .NET Framework. Хочу обратить ваше внимание, что SharpDevelop 5.1 не всегда корректно работает с преобразованием проекта для снижения версии Framework. То есть, если вы изначально задали целевую версию Framework, к примеру, 2.0 и хотите преобразовать в 4.5, то в большинстве случаев это не вызовет никаких проблем:



А вот обратная процедура, несмотря на то, что SharpDevelop, в отличие от Visual Studio, обновит все ссылки, может вызвать ошибку. Например, такую:



В этом случае лучше создать новый проект с необходимой версией Framework, а не преобразовывать существующий. Однако, мы отвлеклись. Итак, мы создали проект со значком в трее. В появившемся листинге нам интересны два момента. Первый – это метод InitializeMenu():

private MenuItem[] InitializeMenu()
		{
			MenuItem[] menu = new MenuItem[] {
				new MenuItem("Запустить!", menuRunClick),
				new MenuItem("О программе", menuAboutClick),
				new MenuItem("Выход", menuExitClick)
			};
			return menu;
		}
В этом методе мы добавляем в контекстное меню значка в трее нашей программы пункты. Задаем название их и обработчик. А второй момент это другой метод:

	private void menuRunClick(object sender, EventArgs e)
		{
            Random rnd = new Random();
            int y = SystemInformation.PrimaryMonitorSize.Height; 
            int x = SystemInformation.PrimaryMonitorSize.Width; 
       
            while (true) {
            	Cursor.Position = new System.Drawing.Point(rnd.Next(0, x), rnd.Next(0, y));
                System.Threading.Thread.Sleep(300);                  
            }
}
Здесь в строках 4-5 мы определяем размер экрана пользователя, в шестой строке задаем бесконечный цикл, в седьмой устанавливаем курсор в случайное место экрана, а в восьмой заставляем компьютер уснуть на три десятых секунды. В результате после запуска указатель мыши будет хаотично бегать по экрану.

Как видите, все предельно просто. В следующих заметках мы продолжим работать с курсором, в частности, научимся задавать для него собственную картинку.


Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.



тегизаметки, SharpDevelop, си шарп, курсор, NotifyIcon





Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




Сколько памяти расходует мое приложение Java?
Промисы в JavaScript


© upread.ru 2013-2022
При перепечатке активная ссылка на сайт обязательна.
Задать вопрос
письмо
Здравствуйте! Вы можете задать мне любой вопрос. Если не получается отправить сообщение через эту форму, то пишите на почу up777up@yandex.ru
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.