Род Стивенс

Книги → Delphi. Готовые алгоритмы → Глава 13. Объектно-ориентированные методы

// Получаем первое дочернее окно рабочего стола. next_hWnd := GetWindow(desktop_hWnd,GW_CHILD); while (next_hWnd<>0) do begin

buflen := GetWindowText (next_hWhd,@buf,MAX_CHAR) ;

if (buflen > 0) then

begin

Result : = Result + CR+Format ( ' %10d %s',

[next_hWnd,String(buf) ]);

end;

// Получаем следующее дочернее окно. next_hWnd := GetWindow(next_hWnd,GW_HWNDNEXT) ; end;

end;

//

// TAWindowLister

/ /

it — — — — — — — — — — — —

// Конструктор, который ничего не выполняет.

constructor TAWindowLister.Create;

begin

end;

Единственный объект WindowLister доступен во всем проекте. Следующий код показывает, как основная программа использует свойство WindowList этого объекта для вывода на экран списка окон.

ListMemo.Text := WindowLister .WindowList;

Сериализация

Многие приложения сохраняют объекты и восстанавливают их. Например, приложение может сохранить представление своих объектов в текстовом файле. При следующем запуске программа считывает файл и перегружает объекты.

В объекте могут содержаться процедуры, которые считывают и записывают его в файл. Более общий подход состоит в том, чтобы создать процедуры, которые со­храняют и восстанавливают данные объекта с помощью строки String. Посколь­ку при сохранении данных в строке объект преобразуется в последовательность символов, этот процесс иногда называется сериализащей (serialization).

Преобразование объекта в строку обеспечивает большую гибкость основной программы. При этом она может сохранять и восстанавливать объект, используя текстовый файл, базу данных или ячейку памяти. Разрешается пересылать представ­ленный таким образом объект по сети или сделать его доступным на Web-странице. Программа или элемент управления Act iveX на другом конце могут использовать сериализацию для воссоздания объекта. Программа может также дополнительно обработать строки, например, зашифровать строку после преобразования объекта в строку и расшифровать перед обратным преобразованием.

Один из приемов сериализации объекта состоит в том, чтобы объект записал все свои данные в строку заданного формата. Например, предположим, что класс

ТВох имеет свойства xl, yl, х2 и у2. Следующий код показывает, как класс опре­деляет процедуры свойства Serialization.

function ТВох.Serialization : String;

← предыдущая следующая →

Страницы раздела: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

Публикация компанией Dropbox кода Zulip – средства общения для IT-разработчиков

20.11.2015
Одной из одобрительно встреченных программистами инициатив, реализующихся в рамках акции Hack Week, стала публикация исходного кода приложения Zulip – веб-приложения для общения между собой разработчиков в сфере IT-технологий.

Объединение ОС Android и Chrome

17.11.2015
Слухи об объединении двух крупнейших ОС компании Google, Android и Chrome, гуляют по Интернету уже более 5 лет, но до сих пор этого не случилось, хотя очевидно, что с течением времени эти ОС становятся всё более похожими: так, в последнее время появилось немало Android-устройств, к которым прилагаются клавиатуры, а Chrome OS «научилась» работать с сенсорными экранами.

Конференция Linux Piter 2015

15.11.2015
Уже почти через неделю в Санкт-Петербурге впервые в истории пройдёт конференция, посвящённая проблемам свободного программного обеспечения – Linux Piter 2015.