Добро пожаловать в блог Фан Чжипэна и ответьте на «666», чтобы получить книгу интервью.


Источник: juejin.cn/post/6914083794806898695

предисловие

Тогда, когда я был молодым и невежественным, я заполнил добровольную программу тем летом и выбрал специализацию.Мои родители слышали, как другие старшие говорили, что лучше выбрать специализацию в области компьютерных наук. С тех пор на моем теле остался глубокий отпечаток Цзиюань. Из общежития в компьютерный класс, из компьютерного класса в библиотеку, C, C++, Java, пока вы хотите написать что-то, что вам интересно, вы можете сидеть часами, но когда вы были молоды, ты встала, собралась, бежала всю дорогу навстречу богине, светлой Легкой и развязной.

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

Пытался напомнить себе на телефоне, но это не сработало. Также включена функция напоминания о сидячем положении Xiaomi Mi Band.Иногда я пишу код и отключаю его, когда время истечет, но это все равно не действует. Вот и думаю то ли мне лень, то ли легко увлечься написанием кода с Idea, короче не может быть интересно менять требования.

Так что к Новому году я планирую разработать для себя небольшой плагин для борьбы с зависимостью от Idea, я называю ее [StopCoding]. Она должна иметь возможность установить, через сколько минут появится всплывающее диалоговое окно с напоминанием. Как только диалоговое окно появится, окно редактирования кода идеи автоматически потеряет фокус, и ничего нельзя будет сделать. Это еще не конец, ключ в этом диалоге. box Его нельзя закрыть, и он также показывает обратный отсчет до отдыха, и даже если я изменяю системное время, обратный отсчет все еще работает, если я не открою диспетчер задач, не закрою процесс Idea и не перезапущу Idea. Но подумай, идеи все закрыты, давайте отдохнем.

Позвольте мне представить ее простое руководство по использованию и руководство по разработке.

Руководство по установке и использованию

Установить

1. Найдите и установите плагин StopCoding прямо в идее (официальная одобрена)

картина

2. Небольшие партнеры по разработке интрасети могут загружать и устанавливать локально

https://github.com/jogeen/StopCoding/releases/tag/20210104-V1.0

  • Локальная установка:
картина

использовать

  • Шаг 1. Затем в строке меню Tools->StopCoding
картина
  • Шаг 2. Установите подходящие для вас параметры и сохраните.
картина
  • Шаг 3. Тогда наслаждайтесь кодированием, не беспокойтесь о зависимости. Когда рабочее время закончится, она выведет следующий ящик, чтобы напомнить, конечно, этот ящик нельзя закрыть, он закроется автоматически только после того, как у вас будет достаточно времени для отдыха.
картина

Учебник по разработке

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

техническая сфера

  • Базовая структура проекта плагина

  • Swing в основном отвечает за взаимодействие двух диалоговых окон.

  • Таймер как самый простой выбор таймера

Структура проекта плагина

картина
  • плагин.xml

Это основной конфигурационный файл проекта плагина. Для объяснения каждого элемента в нем вы можете обратиться к введению к первой статье:

https://juejin.cn/post/6844904127990857742

  • пакет данных
    • SettingData, информация о конфигурации соответствует модели
    • DataCenter, как центр обработки данных во время выполнения, представляет собой статические глобальные переменные.
  • оказание услуг
    • TimerService Основной код этого расчета времени
  • задача
    • Задание на время RestTask во время отдыха
    • Запланированные задачи, когда WorkTask работает
  • пользовательский интерфейс
    • Диалоговое окно SettingDialog для информации о настройках
    • Диалоговое окно TipsDialog для напоминания во время перерыва
  • StopCodingSettingAction запускает действие записи

Качать

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

Создать диалог

  • Шаг 1
картина
  • Шаг 2
картина
  • Шаг 3
картина
  • Примечание. Здесь нет подробного объяснения Swing, потому что эту вещь в интерфейсе нужно практиковать самостоятельно. Здесь нет ручного описания.

Добавить событие

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

public class TestDialog extends JDialog {  
    private JPanel contentPane;  
    private JButton buttonOK;  
    private JButton buttonCancel;  
  
    public TestDialog() {  
        setContentPane(contentPane);  
        setModal(true);  
        getRootPane().setDefaultButton(buttonOK);  
  
        buttonOK.addActionListener(new ActionListener() {  
            public void actionPerformed(ActionEvent e) {  
                onOK();  
            }  
        }); //这是给OK按钮绑定点击事件的监听器  
  
        buttonCancel.addActionListener(new ActionListener() {  
            public void actionPerformed(ActionEvent e) {  
                onCancel();  
            }  
        });//这是给取消按钮绑定点击事件的监听器  
    //其他代码  
    }  

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

  • шаг 1
картина
  • шаг 2
картина

Таймер таймер

В этом плагине вам нужно использовать функцию хронометража для расчета принципала и времени отдыха одновременно. Поэтому использование таймера, поставляемого с JDK, очень удобно. Ниже я поместил здесь часто используемый API Таймера, чтобы его использование было понятно.

  • Метод строительства
картина
  • предотвращение членов
картина
  • В основном запланируйте, чтобы добавить запланированную задачу, и используйте отмену, чтобы отменить задачу, чтобы остановить таймер.

в конце концов

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

Популярный контент:
картина
Недавно я брал интервью у BAT и составил материал интервью « Java Interview BAT Clearance Manual » , охватывающий основные технологии Java, JVM, параллелизм Java, SSM, микросервисы, базы данных, структуры данных и многое другое.
Как его получить: Нажмите « Смотрел », подпишитесь на официальный аккаунт и ответьте  на 666  , чтобы получить его. Больше контента будет предоставляться один за другим.
Увидимся завтра (。・ω・。)ノ♡