Вне урока. Пишем простые гонки на java часть 1.

Не планировал переходить к публикации заметок о создании конкретных приложений, пока мы не выложу все лекции по ключевым моментам в java. Однако по просьбам трудящихся. Люди просят, значит приступим. Честно признаюсь — лекции лишь адаптации видеоуроков, которые записаны не мной. Ну что поехали. Задача сделать простое 2D гонки.

Открываем Netbeans, нажимаем Файл — Создать проект. В группе «категории» выбираем Java, а в группе «проекты» пункт Приложение java.

В строке Имя проекта введём, например, Gonki.

 

Убираем комментарии, чтобы у нас остался следующий код в файле gonki.java

 

package gonki;

public class Gonki {
   
    public static void main(String[] args) {
       
    }  
}

Теперь создадим папку для ресурсов игры. Для этого нажмём ПКМ (Правая Кнопка Мыши) по пакету gonki и выберем Новыйпапка. В открывшемся окне в строке Имя папки напишем res, после чего нажмём Готово.

В папке res будут храниться следующие изображения:

1) Дорога (1200×600)

2) Машинка игрока, когда она «едет прямо» и когда она поворачивает вправо и влево.

3) Машинка противников.

Графика не моя, я её скачал.

Отправить изображения в папку res очень просто. Cохраняем их в какую-либо папку, выделяем, нажимаем ПКМ — копировать. Теперь жмём ПКМ по папке res и выбираем Вставить.

Теперь создадим игровое окно. Но перед этим необходим импортировать библиотеку javax.swing. Для этого в файле gonki.java ниже строки объявления пакета пишем

 import javax.swing.*;

Далее в методе main пишем


 JFrame window = new JFrame ("Простые гоночки на Java");

То есть мы создали ссылочную переменную window типа JFrame, которая указывает на объект JFrame, конструктор которого принимает в данном случае заголовок окна («Простые гоночки на Java»).

Ниже пропишем следующее


window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Мы вызвали метод объекта window setDefaultCloseOperation с константой JFrame.EXIT_ON_CLOSE. Это необходимо для того, чтобы окно с игрой можно было закрыт нажатием Левой Кнопкой Мыши (ЛКМ).

Соответственно код файла gonki.java выглядит так:

package gonki;

import javax.swing.*;

public class Gonki {
   
    public static void main(String[] args) {
       
        JFrame window = new JFrame ("Простые гоночки на Java");
        
        window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }  
}

Далее устанавливаем размеры окна. Пишем ниже:

window.setSize(1100, 600);

Метод setSize принимает ширину и высоту окна программы. Однако если мы сейчас запустим программу, то ничего не произойдёт. Потому что нужно сделать наш фрейм видимым. Для этого ниже прописываем:

window.setVisible(true);

Попробуем запустить программу и получим окно заданных размеров. Код файла gonki.java покавыглядит так:


package gonki;

import javax.swing.*;

public class Gonki {
   
    public static void main(String[] args) {
       
        JFrame window = new JFrame ("Простые гоночки на Java");
        
        window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        window.setSize(1100, 600);
        
        window.setVisible(true);
    }  
    
}

Теперь помимо того, что мы скопировали наши файлы с графикой в папку res, давайте снова выделим рисунки, нажмём копировать и перейдём в папку с нашим проектом. Как правило NetBeans хранит файлы проектов в папке «мои документы» — NetBeansProjects. В папке NetBeansProjects находим название нашего проекта — gonki, а в папке gonki папку res — туда тоже копируем графические файлы.

Пришло время создать фрейм с фоном дороги.

Теперь в папке gonki создадим файл road.java (дорога) с вот таким кодом


package gonki;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import javax.swing.*;

public class Road extends JPanel {
    
    Image img = new ImageIcon("res/doroga.png").getImage();
    
    public void paint(Graphics g) {
        
        g = (Graphics2D) g;
        g.drawImage(img, 0, 0, null);
        
    } 
    
}


Ключевое слово extends обозначает Наследование. Класс Road расширяет Jpanel. Дорога занимает всю область главного фрейма. Image img = new ImageIcon(«res/doroga.png»).getImage(); — конструктор объекта класса ImageIcon принимает путь к изображению, после чего вызывается метод getImage(), который и возвращает нам Image.

Опишу я его позже.

А файл gonki.java изменим следующим образом:


package gonki;
 
import javax.swing.*;
 
public class Gonki {
    
    public static void main(String[] args) {
        
        JFrame window = new JFrame ("Простые гоночки на Java");
         
        window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         
        window.setSize(1100, 600);
        
        
        window.add(new Road());
         
        window.setVisible(true);
        
        
    }  
     
}

Дописывается….

Раздел: Работа в сети Интернет. Заметка 7. Сервисы Интернет-петиций

В этой заметке говорим о сервисах интернет-петиций. Также прошу подписать петицию за отмену закона Яровой: https://www.roi.ru/28432/ Подробнее о законе Яровой, уничтожающего телекоммуникации: http://ldpr.tk/page/ja-prosto-ostavlju-eto-zdes

Раздел: Работа в сети Интернет. Заметка 6. Обжалование постановления полиции в Прокуратуру

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

Раздел: Работа в сети Интернет. Заметка 4. Отправка заявления в полицию, в Интернет-приемные

Многие сайты институтов гражданского общества, а также депутатов различных уровней имеют Интернет-приёмные. Дело очень хорошее — поскольку принимать обращения сайты могут 24 часа в сутки, 7 дней в неделю, 365 (366) дней в году без всяких очередей.

Однако далеко не все знают, что возможность дистанционного обращения присутствует также и в органах МВД. Причём порой подача заявления через Интернет даже более эффективна — система автоматически присвоит обращению уникальный номер, по которому можно отслеживать статус заявления в реальном времени.

О том, как обращаться дистанционно в полицию записан небольшой видеоролик. В следующих выпусках будет рассмотрена процедура обжалования постановлений МВД в прокуратуру посредством сети Интернет.

Отправка заявки на зачисление в образовательное учреждение, посредством сайта beta.gosuslugi.ru

В этом видеоуроке отправляем заявку на зачисление в образовательное учреждение (на примере Гусевского агропромышленного колледжа), посредством сайта beta.gosuslugi.ru. Также работаем с pdf.