Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Основы программирования на Java .



О.Ф. Власенко

 

 

Основы программирования на Java .

Разработка GUI

 

Методические указания к выполнению лабораторных работ

по программированию для студентов направления 230100.62 «Информатика и вычислительная техника»

 

Ульяновск УлГТУ 2015


УДК 681.3 (076)

ББК 32.97 я 7

В58

 

 

Рецензент

доцент кафедры вычислительной техники Ульяновского государственного технического университета, канд. техн. наук Святов К.В.

 

 

Рекомендовано научно-методической комиссией

факультета информационных систем и технологий

 в качестве методических указаний

 

 


Власенко Олег Федосович

В58 Основы программирования на Java. Разработка GUI: …….Методические указания – О.Ф. Власенко. – Ульяновск: УлГТУ, …….2015. 92 с.

 

Предназначены для студентов, изучающих язык Java.

Рассмотрены вопросы начала работы в дизайнере форм WindowBuilder при использовании средств AWT и Swing для создания GUI приложений на Java.

Представлена минимально необходимая информация по установке и использованию WindowBuilder, по базовым компонентам Swing (панели, кнопки, метки, поля редактирования и др.), созданию генерируемых изображений средствами Graphics.

Приведены задания на 4 работы по созданию GUI приложений с вводом и выводом текста, созданию изображений различной степени сложности средствами Graphics.

Указания могут быть использованы студентами, изучающими дисциплины «Информатика», «Программирование на языках высокого уровня» при изучении разработки GUI приложений на Java.

Работа подготовлена на кафедре «Вычислительная техника».

УДК 681.3 (076)

ББК 32.97 я 7

 

 

© Власенко О.Ф., 2015

© Оформление. УлГТУ, 2015


ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ. 5

ЗНАКОМСТВО С РАЗРАБОТКОЙ GUI ПРИЛОЖЕНИЙ НА JAVA. 7

Установка WindowBuilder. 7

Создание простейшей GUI программы при помощи WindowBuilder. 11

Код простейшего GUI приложения и его работа. 16

Как это работает. 16

Код простейшего GUI приложения. 17

Работа с дизайнером форм – на примере приложения, считающего нажатия кнопки. 19

Внешний вид окна счетчика нажатий кнопки. 19

Переключение в режим дизайнера форм.. 20

Добавление Absolute Layout в окно приложения. 22

Добавление кнопки в окно приложения. 23

Добавление метки в окно приложения. 27

Переключение в режим редактирования кода. 30

Код после добавления кнопки и метки. 31

Добавление поля к классу MyFirst_GUI 33

Добавление обработчика события для кнопки. 34

Конвертация метки из локальной переменной в поле класса. 36

Написание текста обработчика события для кнопки. 37

Финальный код приложения, считающего нажатия кнопки. 39

Создание GUI приложения с вводом, вычислением и выводом – на примере вычисления факториала числа. 42

Добавление метки и изменение имени элемента. 46

Добавление кнопки и изменение текста уже созданного элемента. 48

Добавление текстового поля ввода. 51

Добавление не редактируемого текстового поля для вывода. 53

Добавление обработчика нажатия кнопки. 53

Полный код приложения для вычисления факториала. 55

Пример выполнения работы D – вывод узора из чисел. 58

Добавление элемента JTextArea. 59

Добавление элемента JSpinner и установка параметров его модели. 60

Код приложения с JTextArea и JSpinner. 62

Конвертация локальных переменных в поля класса. 63

Добавление обработчика событий изменения состояния JSpinner. 64

Проверка работы приложения с узорами. 65

Полный код приложения рисования узора. 66

СОЗДАНИЕ ИЗОБРАЖЕНИЙ СРЕДСТВАМИ JAVA. 68

Экранная система координат. 69

Графические примитивы Graphics. 71

Graphics.setColor(Color color) 72

Graphics.drawLine(int x1, int y1, int x2, int y2) 73

Graphics.drawRect(int x, int y, int width, int height) 73

Graphics.fillRect(int x,int y, int width, int height) 74

Graphics.drawRoundRect(int x, int y, int width, int height, int rx, int ry) 75

Graphics.drawOval(int x, int y, int width, int height) 75

Graphics.drawArc(int x, int y, int width, int height, int alpha, int beta) 76

Graphics.drawString(String string, int x, int y) 77

Рисование в собственной панели с использованием Graphics. 78

Координатная сетка для рисования. 79

Изображение в координатной сетке. 80

Оцифровка изображения в координатной сетке. 81

Код метода paint() для отрисовки домика. 81

Создание приложения с собственной панелью.. 82

Создание собственной панели – класс MyPanel 83

Создание приложения со стандартной панелью JPanel 87

Использование нашей панели MyPanel вместо стандартной JPanel 91

Генерирование изображения с использованием цикла. 95

Создание сложного изображения из повторяющегося простого. 103

ЗАДАНИЯ ДЛЯ ЛАБОРАТОРНЫХ РАБОТ. 109

Задача D – создание узора из чисел. 109

Задача E – создание статического изображения. 111

Задача F – создание динамического изображения. 113

Задача G – Создание сложного изображения из повторяющегося простого. 115

ЗАКЛЮЧЕНИЕ. 117

СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ.. 118

Интернет–ресурсы.. 118

Книги. 118


ВВЕДЕНИЕ

 

Язык Java является одним из наиболее популярных как в коммерческой разработке, так и в обучении студентов основам объектно-ориентированного программирования. Язык Java с равным успехом используют для создания Веб систем, для написания мобильных и десктоп  приложений. При разработке десктоп приложений часто используют библиотеки AWT и Swing, являющиеся стандартными средствами Java и позволяющие создавать кроссплатформенные GUI приложения. Для быстрого создания интерфейса приложения часто используется визуальный дизайнер форм WindowBuilder, который прост в изучении и в использовании.  Эта простота явилась причиной выбора WindowBuilder в качестве основного инструмента для знакомства студентов с разработкой GUI приложений под Java в рамках курса «Программирование на языках высокого уровня».

Существует множество источников для изучения Java – это и книги, и обучающие онлайн курсы, и многочисленные статьи по тем или иным вопросам на популярных Интернет–ресурсах. Но по WindowBuilder очень мало источников, особенно на русском языке. Также крайне плохо освещены вопросы старта новичка в GUI разработке на Java и особенно при работе с WindowBuilder.

Поэтому в данных методических указаниях автором собран в одно целое материал как по началам работы в WindowBuilder, так и в разработке GUI приложений в целом. В частности, здесь собрана в одном месте минимально необходимая информация по установке и использованию WindowBuilder, базовым компонентам Swing (панели, кнопки, метки, поля редактирования и др.), созданию генерируемых изображений средствами Graphics. Приведены задания на 4 работы по созданию GUI приложений с вводом и выводом текста, по созданию изображений различной степени сложности встроенными средствами языка Java.

Данные методические указания можно применять как в процессе выполнения лабораторных работ в аудитории, так и для самостоятельного изучения основ разработки GUI приложений на Java.

 Методические указания разработаны в соответствии с программой «Программирование на языках высокого уровня» для студентов 1 курса направления подготовки 230100.62 «Информатика и вычислительная техника».

Выписка из ГОС ВПО направления подготовки 230100.62 «Информатика и вычислительная техника».

 

ОПД.Ф.05 Программирование на языке высокого уровня   основные этапы решения задач на ЭВМ; критерии качества программы; жизненный цикл программы; постановка задачи и спецификация программы; способы записи алгоритма; программа на языке высокого уровня; стандартные типы данных; представление основных управляющих структур программирования; теорема структуры и структурное программирование; анализ программ; утверждения о программах; корректность программ; правила вывода для основных структур программирования; инвариантные утверждения; процедуры и функции; массивы; утверждения о массивах; записи; файлы; индуктивные функции на последовательностях (файлах, массивах); динамические структуры данных; линейные списки: основные виды и способы реализации; линейный список как абстрактный тип данных; модульные программы; рекурсивные определения и алгоритмы; программирование рекурсивных алгоритмов; способы конструирования и верификации программ.


Установка WindowBuilder

WindowBuilder является одним из самых простых и функциональных дизайнеров форм для создания GUI в Java. Мы будем использовать именно его. Для того чтобы использовать WindowBuilder, Вам нужно иметь на Вашем компьютере установленный JDK и установленный Eclipse.

 

 

Чтобы установить WindowBuilder в Ваш Eclipse, Вам нужно выполнить следующие шаги:

  1. Выбрать "Help > Install New Software..." в главном меню

Рис. 1.1. Выбираем «Install new software…»

  1. Скопировать ссылку http://download.eclipse.org/windowbuilder/WB/integration/4.4/ в поле "Work with" окна "Install":

Рис. 1.2. Копируем ссылку на WindowBuilder

3. Нажать кнопку Next. После некоторого времени (до 10-15 минут), требующегося на поиск и выкачку необходимых компонентов, Вы увидите такую форму Install:

Рис. 1.3. Подтверждаем наш выбор

 

 

4. Снова нажать Next. Появится текст лицензии, который нужно принять, выбрав пункт «I accept…». После этого станет доступна кнопка Finish, которую надо нажать.

Рис. 1.4. Соглашаемся с лицензией

5. После этого Eclipse выкачает все необходимые компоненты – ему потребуется несколько минут. И появится такое окно:

Рис. 1.5. Перезапускаем Eclipse

6. После перезапуска Eclipse можно начинать использовать WindowBuilder для создания GUI приложений.



Как это работает

Класс MyFirst_GUI содержит статический метод main() – точку входа в Java приложение и еще два метода: метод MyFirst_GUI() (конструктор класс) и метод initialize(). Также класс содержит поле JFrame frame, которое и есть окно нашего приложения.

Логика работы кода такая:

1. Когда мы запускаем нашу программу, реализованную классом MyFirst_GUI, на выполнение (например, нажав кнопку Run в Eclipse), вызывается метод MyFirst_GUI.main().

2. В методе MyFirst_GUI.main() вызывается метод EventQueue.invokeLater(), в котором обрабатываются события от нашего приложения.

3. Наше приложение создается внутри потока выполнения, который создается конструкцией new Runnable() {…}. С точки зрения Java new Runnable() {…}. – это анонимный класс.

4. Внутри анонимного класса переопределяется метод run(), где собственно создается объект нашего класса MyFirst_GUI. Для этого вызывается конструктор MyFirst_GUI().

5. В конструкторе MyFirst_GUI() есть единственная строка кода – вызов метода initialize().

6.  В методе initialize() собственно и создается окно JFrame, и задаются его параметры.

 

Пример выполнения работы D – вывод узора из чисел

 

Создадим программу для вывода чисел в виде узора. Для числа 5 узор должен выглядеть так:

1

12

123

1234

12345

 

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

Разработаем такую программу. Внешний вид программы будет таким:

 

 

Рис. 1.43. Рисунок из чисел

 

Сначала создадим простую программу с выводом в консоль узора (для числа 5):

public class TestTracery {

 

public static void main(String[] args) {

     int size = 5;       

     for (int i = 1; i <= size; i++) {

           for (int j = 1; j <= i; j++) {

                System.out.print(j + " ");

           }

           System.out.println();

     }        

}

}

 

Создадим для нашей программы новое окно приложения. Создадим его в нашем проекте «GUI_Test»  и назовем «Tracery». Добавим на форму Absolute Layout. Добавим метку с текстом «Размерность узора:» и метку с текстом «Узор:».

Экранная система координат

 

Все мы знакомы с Декартовой системой координат. В ней начало координат – точка (0,0) – находится в центре, ось X направлена вправо, ось Y вверх (рис. 2.1).

 

 

Рис. 2.1. Точки в Декартовой системе координат

 

Для создания изображений на экране дисплея используют экранную систему координат. Она отличается от Декартовой тем, что начало координат – точка (0, 0) – находится в верхнем левом углу экрана, ось X направлена вправо, так же как и в Декартовой системе координат, а ось Y направлена вниз. Стоит отметить еще и тот факт, что будут видны только те элементы изображения, которые имеют координаты в пределах от 0 до WindowWidth-1 – для оси X, и от 0 до WindowHeight-1 – для оси Y. Рисунок ниже демонстрирует это.

 

Рис. 2.2. Экранная система координат

 

 

ЗАДАНИЯ ДЛЯ ЛАБОРАТОРНЫХ РАБОТ

 

ЗАКЛЮЧЕНИЕ

 

Огромный дефицит ИТ специалистов в сфере разработки программного обеспечения делает актуальным вопрос наискорейшего освоения новых языков программирования и современных технологий разработки ПО. Разработка программ для конечного пользователя как GUI приложений является сегодня стандартом. Поэтому актуально для изучающего новый язык очень быстро научиться делать на нем GUI приложения. Данные методические указания предназначены именно для этого. Здесь в одно целое собран материал, касающийся знакомства с разработкой GUI приложений на Java.

В методических указаниях представлена минимально необходимая информация по установке и использованию WindowBuilder, по базовым компонентам Swing (панели, кнопки, метки, поля редактирования и др.), созданию генерируемых изображений средствами Graphics.

Приведены задания на 4 работы по созданию GUI приложений с вводом и выводом текста, созданию изображений различной степени сложности средствами Graphics.

Методические указания можно применять как в процессе выполнения лабораторных работ в аудитории, так и для самостоятельного изучения основ разработки GUI приложений на Java.



СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ

Интернет–ресурсы

 

1. Руководство по Eclipse: http://sotnyk.com/2011/10/09/rukovodstvo-po-eclipse-ide/ (Дата обращения: 27.08.2015).

2. Eclipse – учебное пособие: http://window.edu.ru/resource/397/58397 (Дата обращения: 27.08.2015).

3. Официальный сайт WindowBuilder - https://eclipse.org/windowbuilder/ (Дата обращения: 27.08.2015).

 

Книги

 

1. Шилдт, Г. Swing. Руководство для начинающих / Г. Шилдт. – М.: Вильямс, 2007. – 704 с.

2. Власенко, О.Ф. Основы программирования на Java. Основные управляющие конструкции: методические указания / О.Ф. Власенко. – Ульяновск: УлГТУ, 2014. – 74 с.

3. Хабибуллин, И.Ш. Java 7 / И.Ш. Хабибуллин. – СПб.: БХВ-Петербург, 2012. – 768 с.

4. Шилдт, Г. Java. Руководство для начинающих / Г. Шилдт. – М.: Вильямс, 2012. – 624 с.

5. Шилдт, Г. Полный справочник по Java (7-e изд.) / Г. Шилдт. – М.: Вильямс, 2009. – 1040 с.

 

 


 

 

Учебное издание

Власенко Олег Федосович

 


О.Ф. Власенко

 

 

Основы программирования на Java .

Разработка GUI

 

Методические указания к выполнению лабораторных работ

по программированию для студентов направления 230100.62 «Информатика и вычислительная техника»

 

Ульяновск УлГТУ 2015


УДК 681.3 (076)

ББК 32.97 я 7

В58

 

 

Рецензент

доцент кафедры вычислительной техники Ульяновского государственного технического университета, канд. техн. наук Святов К.В.

 

 

Рекомендовано научно-методической комиссией

факультета информационных систем и технологий

 в качестве методических указаний

 

 


Власенко Олег Федосович

В58 Основы программирования на Java. Разработка GUI: …….Методические указания – О.Ф. Власенко. – Ульяновск: УлГТУ, …….2015. 92 с.

 

Предназначены для студентов, изучающих язык Java.

Рассмотрены вопросы начала работы в дизайнере форм WindowBuilder при использовании средств AWT и Swing для создания GUI приложений на Java.

Представлена минимально необходимая информация по установке и использованию WindowBuilder, по базовым компонентам Swing (панели, кнопки, метки, поля редактирования и др.), созданию генерируемых изображений средствами Graphics.

Приведены задания на 4 работы по созданию GUI приложений с вводом и выводом текста, созданию изображений различной степени сложности средствами Graphics.

Указания могут быть использованы студентами, изучающими дисциплины «Информатика», «Программирование на языках высокого уровня» при изучении разработки GUI приложений на Java.

Работа подготовлена на кафедре «Вычислительная техника».

УДК 681.3 (076)

ББК 32.97 я 7

 

 

© Власенко О.Ф., 2015

© Оформление. УлГТУ, 2015


ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ. 5

ЗНАКОМСТВО С РАЗРАБОТКОЙ GUI ПРИЛОЖЕНИЙ НА JAVA. 7

Установка WindowBuilder. 7

Создание простейшей GUI программы при помощи WindowBuilder. 11

Код простейшего GUI приложения и его работа. 16

Как это работает. 16

Код простейшего GUI приложения. 17

Работа с дизайнером форм – на примере приложения, считающего нажатия кнопки. 19

Внешний вид окна счетчика нажатий кнопки. 19

Переключение в режим дизайнера форм.. 20

Добавление Absolute Layout в окно приложения. 22

Добавление кнопки в окно приложения. 23

Добавление метки в окно приложения. 27

Переключение в режим редактирования кода. 30

Код после добавления кнопки и метки. 31

Добавление поля к классу MyFirst_GUI 33

Добавление обработчика события для кнопки. 34

Конвертация метки из локальной переменной в поле класса. 36

Написание текста обработчика события для кнопки. 37

Финальный код приложения, считающего нажатия кнопки. 39

Создание GUI приложения с вводом, вычислением и выводом – на примере вычисления факториала числа. 42

Добавление метки и изменение имени элемента. 46

Добавление кнопки и изменение текста уже созданного элемента. 48

Добавление текстового поля ввода. 51

Добавление не редактируемого текстового поля для вывода. 53

Добавление обработчика нажатия кнопки. 53

Полный код приложения для вычисления факториала. 55

Пример выполнения работы D – вывод узора из чисел. 58

Добавление элемента JTextArea. 59

Добавление элемента JSpinner и установка параметров его модели. 60

Код приложения с JTextArea и JSpinner. 62

Конвертация локальных переменных в поля класса. 63

Добавление обработчика событий изменения состояния JSpinner. 64

Проверка работы приложения с узорами. 65

Полный код приложения рисования узора. 66

СОЗДАНИЕ ИЗОБРАЖЕНИЙ СРЕДСТВАМИ JAVA. 68

Экранная система координат. 69

Графические примитивы Graphics. 71

Graphics.setColor(Color color) 72

Graphics.drawLine(int x1, int y1, int x2, int y2) 73

Graphics.drawRect(int x, int y, int width, int height) 73

Graphics.fillRect(int x,int y, int width, int height) 74

Graphics.drawRoundRect(int x, int y, int width, int height, int rx, int ry) 75

Graphics.drawOval(int x, int y, int width, int height) 75

Graphics.drawArc(int x, int y, int width, int height, int alpha, int beta) 76

Graphics.drawString(String string, int x, int y) 77

Рисование в собственной панели с использованием Graphics. 78

Координатная сетка для рисования. 79

Изображение в координатной сетке. 80

Оцифровка изображения в координатной сетке. 81

Код метода paint() для отрисовки домика. 81

Создание приложения с собственной панелью.. 82

Создание собственной панели – класс MyPanel 83

Создание приложения со стандартной панелью JPanel 87

Использование нашей панели MyPanel вместо стандартной JPanel 91

Генерирование изображения с использованием цикла. 95

Создание сложного изображения из повторяющегося простого. 103

ЗАДАНИЯ ДЛЯ ЛАБОРАТОРНЫХ РАБОТ. 109

Задача D – создание узора из чисел. 109

Задача E – создание статического изображения. 111

Задача F – создание динамического изображения. 113

Задача G – Создание сложного изображения из повторяющегося простого. 115

ЗАКЛЮЧЕНИЕ. 117

СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ.. 118

Интернет–ресурсы.. 118

Книги. 118


ВВЕДЕНИЕ

 

Язык Java является одним из наиболее популярных как в коммерческой разработке, так и в обучении студентов основам объектно-ориентированного программирования. Язык Java с равным успехом используют для создания Веб систем, для написания мобильных и десктоп  приложений. При разработке десктоп приложений часто используют библиотеки AWT и Swing, являющиеся стандартными средствами Java и позволяющие создавать кроссплатформенные GUI приложения. Для быстрого создания интерфейса приложения часто используется визуальный дизайнер форм WindowBuilder, который прост в изучении и в использовании.  Эта простота явилась причиной выбора WindowBuilder в качестве основного инструмента для знакомства студентов с разработкой GUI приложений под Java в рамках курса «Программирование на языках высокого уровня».

Существует множество источников для изучения Java – это и книги, и обучающие онлайн курсы, и многочисленные статьи по тем или иным вопросам на популярных Интернет–ресурсах. Но по WindowBuilder очень мало источников, особенно на русском языке. Также крайне плохо освещены вопросы старта новичка в GUI разработке на Java и особенно при работе с WindowBuilder.

Поэтому в данных методических указаниях автором собран в одно целое материал как по началам работы в WindowBuilder, так и в разработке GUI приложений в целом. В частности, здесь собрана в одном месте минимально необходимая информация по установке и использованию WindowBuilder, базовым компонентам Swing (панели, кнопки, метки, поля редактирования и др.), созданию генерируемых изображений средствами Graphics. Приведены задания на 4 работы по созданию GUI приложений с вводом и выводом текста, по созданию изображений различной степени сложности встроенными средствами языка Java.

Данные методические указания можно применять как в процессе выполнения лабораторных работ в аудитории, так и для самостоятельного изучения основ разработки GUI приложений на Java.

 Методические указания разработаны в соответствии с программой «Программирование на языках высокого уровня» для студентов 1 курса направления подготовки 230100.62 «Информатика и вычислительная техника».

Выписка из ГОС ВПО направления подготовки 230100.62 «Информатика и вычислительная техника».

 


Поделиться:



Последнее изменение этой страницы: 2019-03-22; Просмотров: 368; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.121 с.)
Главная | Случайная страница | Обратная связь