Главная » Статьи для тега "события"

Уменьшение связности с использованием событий Spring

Добавлено Дата: 18 May, 2014 категория: Spring

Внедрение зависимостей является в Spring основным способом ослабления связей между прикладными объектами, но это не един- ственный путь. Еще одним способом взаимодействия объектов явля- ются публикация и обработка событий. Генерируя события, объекты могут взаимодействовать с другими объектами, даже не зная, какие объекты принимают их. Более того, объект, принимающий события, может реагировать на них, не имея представления о том, кто гене- рирует эти события.

Читать »

Начальные установки системы GLUT OpenGL Free Pascal

Добавлено Дата: 18 May, 2014 категория: Free Pascal

Большинство руководств, методических пособий и опубликованных книг, так или иначе связанных с OpenGL, рекомендуют начинать пролог с обращения к про- цедуре glutInit, передавая ей адреса двух аргументов — счетчика параметров ко-

мандной строки (@argc) и указателя на строку, содержащую все параметры, вклю- чая и имя запускаемого приложения (@argv). В одном из таких руководств, разме- щенных на сайте Wikipedia, даже приводится пример процедуры на Паскале, из- влекающей нужные данные из командной строки и передающей их процедуре инициализации системы GLUT (листинг 16.1).

Читать »

Поддержка устройств ввода – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 2 October, 2013 категория: Программирование игр под Android

Как обсуждалось в Android мы получаем информацию от различных устройств ввода. В этом разделе мы обсудим три наиболее важных метода ввода и работу с ними: сенсорный экран, клавиатуру и акселерометр.

Обработка событий касания и множественных касаний

Читать »

Обработка событий клавиатуры – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 26 August, 2013 категория: Программирование игр под Android

После безумия прошлого пункта стоит сделать передышку и заняться чем-нибудь попроще. Добро пожаловать в мир обработки нажатий клавиш.

Для отслеживания событий клавиш мы реализуем другой интерфейс, названный OnKeyLi stener. У него есть лишь один метод опКеу  со следующей сигнатурой:

Читать »

МОДЕЛЬ MVC В ANDROID И НАБЛЮДЕНИЕ ЗА СОДЕРЖИМЫМ в Android приложении

Добавлено Дата: 25 August, 2013 категория: Разработка для Android

Очень важно обрисовать общую картину того, как паттерн MVC работает в Android с поставщиками содержимого.

Чтобы оценить всю мощь фреймворка, использующего поставщики содержимого, необходимо знать о том, как события обновления курсора вызывают динамические обновления пользовательского интерфейса в Android. Нам кажется, что, затронув эту тему, мы сможем акцентировать внимание на часто упускаемых из виду путях обмена информацией, присутствующих в традиционном паттерне программирования «Модель-вид-контроллер». В целом, работа этого паттерна строится так: вид (view) принимает события пользовательского ввода и доносит эту информацию контроллеру (controller). Контроллер вносит изменения в модель (model), а модель посылает события обновления виду, а также любому другому наблюдателю, который регистрируется как заинтересованный в работе модели. Вид отображает содержимое модели – обычно это происходит без прямого привлечения логики приложения – и в идеальном случае просто итерирует данные, относящиеся к модели.

Читать »

Keyboard Handler: вверх, вверх, вниз, вниз, влево, вправо…

Добавлено Дата: 19 August, 2013 категория: Программирование игр под Android

Обработчик событий клавиатуры KeyboardHandler используется для выполнения целого ряда задач. Прежде всего он должен быть связан с View, так как от него KeyboardHandlег получает информацию о событиях клавиатуры. Далее ему необходимо сохранить текущее состояние каждой клавиши для предъявления этого состояния в ходе опроса. Ему также понадобится список экземпляров класса KeyEvent. И наконец, все это нужно правильно синхронизировать, так как он будет принимать события из потока пользовательского интерфейса, которые будут обрабатываться в главном игровом цикле, запущенном в другом потоке. Достаточно много работы. В качестве небольшого напоминания еще раз посмотрим на класс KeyEvent, который мы определили как часть интерфейса ввода Input:

Читать »

Слушание событий касания – программирование Android

Добавлено Дата: 7 August, 2013 категория: Разработка для Android

 

Как вы уже, конечно же, догадались, чтобы модифицировать демонстрационное приложение для реагирования на прикосновения к экрану, нужно просто добавить к коду обработчик касаний. Код из примера 7.8 дополняет приложение так, чтобы в DotView, там, где происходит прикосновение к экрану, появлялась голубая точка. Этот код нужно добавить в демонстрационное приложение (см. пример 7.7) в начале функции onCreate, прямо после вызова к ее родительскому методу. Обратите внимание: поскольку код, отображающий координаты х и у последней добавленной точки, подключен только к модели, он продолжает работать правильно, независимо от того, как именно вид добавляет точку.

Читать »

НАТИВНЫЕ АКТИВНОСТИ в Android приложении

Добавлено Дата: 21 July, 2013 категория: Разработка для Android

 

В Android 2.3 (API уровня 9) и в версии 5 Android NDK разработчик может писать целые активности и приложения как нативный исходный код, используя класс Nati veActі vi ty для доступа к жизненному циклу приложения Android.

Для использования этого метода на android. арр. Nati veActivity нужно поставить ссылку в файле описания Android. Обратите внимание на атрибут hasCode, имеющийся у ссылки на приложение (application reference). Если в приложении нет кода на языке Java (только Nati veActivity), то этот атрибут должен иметь значение false. Но в нашем случае код на языке Java есть, поэтому данный атрибут будет иметь значение true:

Читать »

Слушание событий клавиатуры – программирование Android

Добавлено Дата: 19 July, 2013 категория: Разработка для Android

 

Обработка ввода с клавиатуры, пригодная для использования на нескольких платформах, реализуется непросто. На некоторых устройствах гораздо больше кнопок, чем на других, некоторые требуют тройного щелчка для символьного ввода и т. д. Трейной щелчок – отличный пример функционала, который нужно по возможности реализовывать во фреймворке, в классе EditText или каком-либо его подклассе.

Читать »

Время в панели состояния C++ Builder

Добавлено Дата: 12 July, 2013 категория: C++, C++ Builder

Нашим последним примером в экскурсе в VCL станет кое-что, в чем многие программисты нуждаются в своих приложениях, но лишь немногие способны осуществить. Во многих приложениях существует необходимость отображать текущее время <Невеселый каламбур получился — Примеч. перев.> в одной из секций панели состояния (status  bar). Хотя  обычно рабочий стол Windows 95/NT отображает его в нижнем правом углу, это происходит не всегда. Пользователи, которые изменили у себя рабочий стол так, что время на нем не показывается, ожидают, что ваше приложение должно предоставить им эту информацию. CBuilder позволяет осуществить их желание настолько легко, что для вас не может быть никаких оправданий, если вы все же не пойдете им навстречу и не положите часы в ваше приложение. В этом примере мы как раз и рассмотрим процесс отображения текущего времени в панели состояния. Когда мы его напишем, вы узнаете достаточно для того, чтобы отображать все что захотите в панели состояния во время исполнения.

Читать »

Проверка данных после ввода C++ Builder

Добавлено Дата: 3 July, 2013 категория: C++, C++ Builder

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

Читать »

Взглянем на файл описания формы (DFM) C++ Builder

Добавлено Дата: 19 June, 2013 категория: C++, C++ Builder

Для того  чтобы  просмотреть файл описания формы, вы должны открыть его в среде CBuilder. Ничего необычного в этом нет. Файл DFM вы открываете так же, как открыли бы исходный, заголовочный или вообще любой текстовый файл. Щелкните кнопку Open File (открыть файл) на панели инструментов и выберите файлы DFM в выпадающем комбинированном списке фильтра файлов по расширению. Выберите файл Unit1.dfm из отображенного списка файлов (вообще-то он должен быть там единственным, но в зависимости от того, как много вы успели написать приложений, их может быть и больше). Выделите файл и нажмите кнопку OK. Сразу же произойдут два события. Во-первых, исходный и заголовочный  файлы  пропадут  из  окна редактора. Во-вторых, в окне редактора отобразится файл DFM в виде простого текстового файла. Вот что вы там увидите, если правильно выполнили все мои указания:

Читать »

Отслеживаем  изменения БД в CBuilder

Добавлено Дата: 16 June, 2013 категория: C++, C++ Builder

Теперь, когда панель состояния находится на форме, надо отследить индивидуальные изменения, сделанные пользователем в записях базы данных. Для того чтобы что-то отследить, нам надо кое- что узнать о том, когда и какие события происходят в «жизни» записи.

Читать »

Добавление кнопки C++ Builder

Добавлено Дата: 14 June, 2013 категория: C++, C++ Builder

Последний штрих в этом примере — добавление на форму новой кнопки.  Создание кнопки не отличается от создания метки или поля ввода. Но нам хотелось бы знать о том, что пользователь нажимает кнопку. Для этого нам нужно уметь создавать обработчик события нажатия на кнопку и ассоциировать этот обработчик с событием OnClick.

Читать »

Несколько слов об ActiveX CBuilder

Добавлено Дата: 10 June, 2013 категория: C++, C++ Builder

Теперь настало время сказать пару слов об управляющих элементах Active и их структуре. Как и компоненты VCL, управляющие элементы ActiveX содержат свойства, методы и события. Однако в отличие от них управляющие элементы ActiveX содержат словарь, который позволяет внешним приложениям (которые называются несущими объектами , container objects) узнавать, какие свойства, события и методы поддерживает данный управляющий элемент. По правде говоря, это не совсем верно. Объекты VCL также можно опрашивать об информации, содержащейся в них. Однако такая возможность существует только в системах, построенных на VCL, например Delphi и CBuilder.

Читать »