Читаем Delphi полностью

procedure TForm1.Button1Click(Sender: TObject);

begin

 bomb;

end;

end.

⊚ Все файлы проекта и исполняемый файл рассмотренной программы находятся на прилагаемом к книге компакт-диске в папке Chapter 15.

<p>Глава 16</p><p>Удаленное управление указателем мыши</p><p>Постановка задачи</p>

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

На самом деле нам придется разработать две программы: первая (назовем ее "Клиент") будет получать координаты указателя на одном компьютере и отправлять их второй программе (назовем ее "Сервер"), которая будет принимать и изменять текущие координаты указателя на присланные клиентом. Данный тип связи называется "клиент-сервер" и для его использования у нас есть все необходимые компоненты на стандартной палитре компонентов Delphi. У "клиента" будет форма с настройками, а "сервер" будет работать незаметно для пользователя. Сначала разработаем клиентскую программу.

<p>Разработка клиентской программы</p><p>Разработка формы</p>

Создайте новый проект Delphi. Присвойте свойству Caption формы заголовок Remote Mouse. Разместите на форме компонент Label категории Standard и присвойте его свойству Caption значение Port. Справа от этой метки разместите компонент Edit категории Standard. Назовите его port (свойство name), а свойству text присвойте значение 2801.

Ниже разместите еще один компонент Label, присвоив его свойству Caption значение IP. Справа от него разместите компонент Edit с именем ip и текстом 127.0.0.1.

В самом низу формы разместите две кнопки (компоненты Button категории Standard), присвоив их свойству Caption значения Connect и Disconnect. Также нам понадобится компонент Timer категории System. В свойствах таймера следует изменить значение свойства Enabled на False, а свойства Interval — на 500 (что соответствует половине секунды).

Разместите на форме самый важный компонент нашей программы — Client Socket категории Internet — и присвойте ему имя Client (свойство Name). Остальные свойства этого компоненты мы будем изменять в самой программе.

Полученная форма должна соответствовать рис. 16.1.

Рис. 16.1. Форма клиентской программы для удаленного управления указателем

<p>Разработка программного кода</p>

По нажатию кнопки Connect должны считываться все настройки и выполняться соединение с сервером:

procedure TForm1.Button1Click(Sender: TObject);

begin

 Client.Port:= StrToInt(port.Text); //считываем порт

 Сlient.Address:= ip.text; //считываем ip-адрес сервера

 Client.Active:= True; //соединяемся

 Timer1.Enabled:= True; //включаем таймер

end;

Сначала мы считываем все необходимые настройки, а затем предпринимаем попытку соединиться с сервером. Если все нормально, то включаем таймер, по которому будут передаваться координаты указателя мыши.

Обработаем нажатие кнопки Disconnect:

procedure TForm1.Button2Click(Sender: TObject);

begin

 Timer1.Enabled:= False;//выключаем таймер

 Client.Close; //закрываем соединение

 Client.Active:=False; //отключаемся от сервера

end;

При нажатии кнопки Disconnect мы перестаем передавать координаты указателя на сервер и отсоединяемся от него.

Для того чтобы на сервере не возникало ошибок при аварийном выключении клиента, создайте обработчик события формы OnDestroy и добавьте в него следующий код:

procedure TForm1.FormDestroy(Sender: TObject);

begin

 Client.Close; //закрываем соединение

 Client.Active:=False; //отключаемся от сервера

end;

При аварийном завершении программы закрывается соединение и выполняется отключение от сервера.

Для уведомления пользователя об успешном соединении с сервером создайте обработчик события client.OnConnect:

procedure TForm1.ClientConnect(Sender: TObject; Socket: TCustomWinSocket);

begin

 ShowMessage('Connected!'); //показать сообщение

end;

Для реализации аналогичного действия при отсоединении от сервера, следует создать обработчик события OnDisconnect:

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных