PIZiadas GRÁFICAS

PIZiadas GRÁFICAS

Мой мир дюйма.

Графического программирования: Взаимодействие : События мыши [JAVA]

mouseEventПосле Создание базовой графической среды и анимация двигатель, ввести зачатки взаимодействия путем включения модели событий мыши.

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

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

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

Чтобы понять событийно управляемое программирование, Выступаем на то, что не: Время в последовательном программировании (o Структура) Это программист определяет, каким будет ход выполнения программы, в событийно управляемое программирование будет пользователь - или то, что вы подаете программы - которые направляют поток программы. Хотя последовательного программирования там, возможно вмешательство внешней программы агента, Эти мероприятия будет происходить, когда программист определило его, не в любое время, как он может быть в случае событийно управляемое программирование.(W)

Реализация интерфейса прослушивателя событий

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

Открытый класс Классная доска расширяется Холст инвентарь MouseListener{

Новый интерфейс требует от нас добавить новый вызов для библиотек JAVA для поиска файлов, реализующих этот интерфейс. Мы будем делать это с зарезервированным словом “импортировать”.

импортировать java.awt.event.MouseListener;

Он будет необходимо реализовать методы, определенные в интерфейсе, а также импортировать класс “MouseEvent” который передается как параметр в эти методы. На данный момент просто мы объявим их без включения какой-либо функциональности.

	общественного недействительными mouseClicked(MouseEvent arg0) {
		// ВСЕ заглушки метода автоматическ произведены
	}
	общественного недействительными mouseEntered(MouseEvent arg0) {
		// ВСЕ заглушки метода автоматическ произведены
	}
	общественного недействительными mouseExited(MouseEvent arg0) {
		// ВСЕ заглушки метода автоматическ произведены
	}
	общественного недействительными mousePressed(MouseEvent arg0) {
		// ВСЕ заглушки метода автоматическ произведены
	}
	общественного недействительными mouseReleased(MouseEvent arg0) {
		// ВСЕ заглушки метода автоматическ произведены
	}

Журнал событий

Мы будем записывать события мыши всякий раз, когда это происходит. В конструкторе класса или метода будет включен вызов “addMouseListener” чтобы указать, что вы хотите добавить прослушиватель.

Параметр, который передается это имя класса, который прислушивается к мыши. В нашем случае мы будем указывать, что это тот же класс записывает это событие, которое будет сообщено, когда это происходит. Это сделали мы обязуемся с тегом “это“.

	общественность Классная доска(){
		это.addMouseListener(это);
	}

Управление события

Мы определяем несколько переменных, которые хранят координаты позиции экрана, где была нажата мышь

	частных int lastX = 0;
	частных int Ласты = 0;

Мы будем осуществлять одну из предыдущих функций, Например, который выполняется каждый раз, когда нажата кнопка мыши “mouseClicked”. На данный момент мы будем просто держать координат, в которой была нажата, Хотя мы могли бы иметь сложную программу с добавленной функциональностью.

Эти координаты находятся в объекте или событии, которое передается в функцию, объект “MouseEvent”

	общественного недействительными mouseClicked(MouseEvent arg0) {
		lastX = getX arg0.();
		Ласты = getX arg0.();
	}

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

	общественного недействительными paintOffScreen(Графика г){
		Перечень перечисление = bd.elements();
		Объект OB;
		в то время как(enum.hasMoreElements()){
			OB = enum.nextElement();
			если(OB InstanceOf SimpleDrawable){
				((SimpleDrawable) ли).краска(грамм);
			}
		}
		paintMousePosition(грамм);
	}

Ответственный за эта функция “paintMousePosition”, осуществление которых заключается в написании графически сохраненные координат положения мыши, с помощью функции “Шнурок”.

	частных недействительным paintMousePosition(Графика г) {
		g.drawString("("+lastX  ","+Ласты  ")", lastX, Ласты);
	}
JAVA

Курс JAVA