**Введение**

Данный проект представляет собой универсальный шаблон проекта, основанный на структуре исходного кода QtCreator. Основная библиотека основана на QtWidgets и включает в себя qcanpool, а также интегрирует часто используемые компоненты и сторонние библиотеки.

qtcanpool предназначен для предоставления пользователям эффективных методов управления проектами, разнообразных вариантов выбора и высококачественных элементов управления.

**Репозиторий**

- GitHub: https://github.com/canpool/qtcanpool
- Gitee: https://gitee.com/icanpool/qtcanpool

**Учебники**

- Учебное пособие: https://blog.csdn.net/canpool/category_10631139.html
- Учебник для начинающих: https://blog.csdn.net/liang19890820/article/details/50277095
- Путь обучения: https://www.devbean.net/category/qt-study-road-2/

**Структура**

| Уровень каталога | Подкаталог | Описание |
| :-------------- | :-------- | :------------------------------------ |
| demos           |           | Богатые примеры                        |
| doc              |           | Документация                           |
| examples         |           | Примеры компонентов                   |
| others           |           | Примеры подмодулей                     |
| projects         |           | Каталог проектов, предоставляющий простой шаблон template, который позволяет пользователям постоянно добавлять свои проекты в этот каталог для реализации единой структуры управления несколькими проектами |
| scripts          |           | Вспомогательные файлы сценариев        |
| src              |           | Файлы исходного кода                   |
|                  | libs       | Базовые библиотеки                    |
|                  | modules    | Базовые модули, практичный код, но не обладает масштабом библиотек |
|                  | plugins    | Основные плагины                      |
|                  | shared     | Практические файлы общего кода         |
| tests            |           | Тестовые случаи                       |
| thirdparty       |           | Использование сторонних библиотек      |

**Среда**

Qt 6.5.3 MinGW/MSVC2019 64bit, Qt 5.15.2 MinGW/MSVC2019 64bit, Qt 5.14.2 MinGW/MSVC2017 64bit. Другие среды не тестировались, рекомендуется использовать версии QT LTS.

**Версия**

Формат: x.y.z. Главная версия. Дополнительная версия. Версия исправления ошибок.

**Ветви**

master (https://gitee.com/icanpool/qtcanpool/tree/master/) — основная ветвь; develop (https://gitee.com/icanpool/qtcanpool/tree/develop/) — ветвь разработки; release-x.y — ветка версий, используемая для исправления проблем конкретных выпущенных версий.

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

**Соглашение**

Соблюдается лицензия с открытым исходным кодом MulanPSL2 (MulanPSL2). Интегрированные компоненты следуют соответствующим лицензиям с открытым исходным кодом.

**Стандарты**

Google C++ Style Guide, стандарты программирования Qt. Исходные файлы на английском языке используют кодировку UTF-8, файлы с китайскими символами используют кодировку UTF-8 with BOM. Формат git commit: git know: commit format.

**Вклад**

Приветствуются обсуждения по вопросам, вызывающим интерес, путём создания issues. Приветствуется форк репозитория и отправка pull requests. Авторы могут добавить личную информацию в заголовки файлов, используя следующий формат:

```
/**
 * Copyright (C) YYYY NAME <EMAIL>
 * Copyright (C) 2023 maminjie <canpool@163.com>
 * SPDX-License-Identifier: MulanPSL-2.0
**/
```

**Общение**

QQ группа: 831617934 (Qt хобби общение).

**Примеры**

fancydemo, fancyribbon, dockdemo, ribbondemo, qxwindow demo.

**Опыт**

Скачайте исходный код, откройте qtcanpool.pro с помощью qtcreator, затем щёлкните правой кнопкой мыши на fancydemo и выберите Run для опыта, как показано ниже:

![run](./doc/pics/run.png)

**Расширение**

В будущем этот репозиторий будет поддерживать только основную библиотеку, а другие библиотеки будут поддерживаться отдельными репозиториями qtcanpool-LIBNAME. Вы можете искать их с помощью тега qtcanpool:

![extend](./doc/pics/extend.png)

**Послесловие** Если вы считаете, что этот проект вам очень помог, вы можете поддержать его, чтобы он развивался и дальше.

Способы поддержки:

sponsor (см. картинку: sponsor.png)

Список спонсоров: список (см. файл: sponsor.md)