1
0
mirror of https://github.com/jaredtao/TaoQuick.git synced 2025-01-19 20:22:56 +08:00
TaoQuick/README.md

375 lines
10 KiB
Markdown
Raw Normal View History

2019-08-17 11:18:28 +08:00
[English](README-en.md)
2019-08-17 11:17:07 +08:00
2020-06-12 12:27:11 +08:00
[github原始仓库https://github.com/jaredtao/TaoQuick](https://github.com/jaredtao/TaoQuick)
2020-06-12 12:25:26 +08:00
2020-06-12 12:27:11 +08:00
[gitee镜像仓库https://gitee.com/jaredtao/TaoQuick](https://gitee.com/jaredtao/TaoQuick)
2020-06-12 12:25:26 +08:00
2019-08-17 11:17:07 +08:00
-------------------------------------------------------------
2020-10-23 08:35:58 +08:00
# 目录
2020-06-19 00:09:08 +08:00
- [目录](#目录)
2019-07-23 12:54:07 +08:00
- [TaoQuick](#taoquick)
2020-06-19 00:09:08 +08:00
- [徽章预览](#徽章预览)
- [项目](#项目)
- [编译](#编译)
- [发布](#发布)
- [仓库状态](#仓库状态)
2019-07-23 12:54:07 +08:00
- [Issue](#issue)
2020-06-19 00:09:08 +08:00
- [其它状态](#其它状态)
- [部分Demo效果预览](#部分demo效果预览)
- [启动界面](#启动界面)
- [动态换皮肤](#动态换皮肤)
- [百叶窗特效](#百叶窗特效)
- [棋盘特效](#棋盘特效)
- [全部效果预览](#全部效果预览)
- [开发环境](#开发环境)
- [功能列表](#功能列表)
- [TaoQuick 安装和使用](#taoquick-安装和使用)
- [联系作者](#联系作者)
- [关注作者动态](#关注作者动态)
- [寻找同道中人](#寻找同道中人)
- [赞助](#赞助)
- [赞助列表](#赞助列表)
2019-07-23 12:54:07 +08:00
2019-07-18 10:17:02 +08:00
# TaoQuick
2019-07-20 00:31:54 +08:00
这是一个QtQuick/Qml组件库集成了常用的QtQuick组件并做了适当的属性封装、功能扩展以方便开发Qml程序。
2019-07-18 10:17:02 +08:00
实现原理可以参考《Qml组件化编程》《Qml特效》系列教程以下网站都有收录:
[涛哥的博客](https://jaredtao.github.io)
2019-08-03 02:11:21 +08:00
[涛哥的博客-国内镜像](https://jaredtao.gitee.io)
2019-07-18 10:17:02 +08:00
## 徽章预览
2019-12-07 15:45:19 +08:00
### 项目
|[最佳实践计划][CII-link]|[许可][license-link]|
|:--:|:--:|
|![CII-badge]|![license-badge]|
[CII-badge]: https://bestpractices.coreinfrastructure.org/projects/3060/badge
[CII-link]: https://bestpractices.coreinfrastructure.org/projects/3060
2019-07-18 10:17:02 +08:00
[license-link]: https://github.com/jaredtao/TaoQuick/blob/master/LICENSE "LICENSE"
[license-badge]: https://img.shields.io/badge/license-MIT-blue.svg "MIT"
2019-12-07 15:45:19 +08:00
### 编译
| [Windows][win-link]| [Ubuntu][ubuntu-link]|[MacOS][macos-link]|[Android][android-link]|[IOS][ios-link]|
|---------------|---------------|-----------------|-----------------|----------------|
| ![win-badge] | ![ubuntu-badge] | ![macos-badge] |![android-badge] |![ios-badge] |
[win-link]: https://github.com/JaredTao/TaoQuick/actions?query=workflow%3AWindows "WindowsAction"
[win-badge]: https://github.com/JaredTao/TaoQuick/workflows/Windows/badge.svg "Windows"
[ubuntu-link]: https://github.com/JaredTao/TaoQuick/actions?query=workflow%3AUbuntu "UbuntuAction"
[ubuntu-badge]: https://github.com/JaredTao/TaoQuick/workflows/Ubuntu/badge.svg "Ubuntu"
2019-07-18 10:17:02 +08:00
2019-12-07 15:45:19 +08:00
[macos-link]: https://github.com/JaredTao/TaoQuick/actions?query=workflow%3AMacOS "MacOSAction"
[macos-badge]: https://github.com/JaredTao/TaoQuick/workflows/MacOS/badge.svg "MacOS"
[android-link]: https://github.com/JaredTao/TaoQuick/actions?query=workflow%3AAndroid "AndroidAction"
[android-badge]: https://github.com/JaredTao/TaoQuick/workflows/Android/badge.svg "Android"
[ios-link]: https://github.com/JaredTao/TaoQuick/actions?query=workflow%3AIOS "IOSAction"
[ios-badge]: https://github.com/JaredTao/TaoQuick/workflows/IOS/badge.svg "IOS"
### 发布
|[已发布][release-link]|[下载][download-link]|下载次数|
|:--:|:--:|:--:|
|![release-badge] |![download-badge]|![download-latest]|
2019-12-07 16:04:32 +08:00
2019-07-18 10:17:02 +08:00
[release-link]: https://github.com/jaredtao/TaoQuick/releases "Release status"
[release-badge]: https://img.shields.io/github/release/jaredtao/TaoQuick.svg?style=flat-square "Release status"
[download-link]: https://github.com/jaredtao/TaoQuick/releases/latest "Download status"
[download-badge]: https://img.shields.io/github/downloads/jaredtao/TaoQuick/total.svg "Download status"
[download-latest]: https://img.shields.io/github/downloads/jaredtao/TaoQuick/latest/total.svg "latest status"
2019-12-07 15:45:19 +08:00
2019-08-03 17:47:27 +08:00
### 仓库状态
2019-12-07 15:45:19 +08:00
2019-08-03 17:47:27 +08:00
|最新标签|用到的编程语言数量|用最多的编程语言|代码大小|仓库大小|
2019-07-18 10:17:02 +08:00
|:--: |:--: |:--:|:--:|:--:|
|![tag-latest]|![languanges]|![taolanguage]|![code-size]|![repo-size]|
[languanges]: https://img.shields.io/github/languages/count/jaredtao/taoquick.svg "language count"
[taolanguage]: https://img.shields.io/github/languages/top/jaredtao/taoquick.svg "top language"
[code-size]: https://img.shields.io/github/languages/code-size/jaredtao/taoquick.svg "code size"
[repo-size]: https://img.shields.io/github/repo-size/jaredtao/taoquick.svg "repo-size"
[tag-latest]: https://img.shields.io/github/tag/jaredtao/taoquick.svg
### Issue
2019-08-03 17:47:27 +08:00
|[Issues][issues-link]|关掉的issue|pull请求|关掉的pull|
2019-07-18 10:17:02 +08:00
|:--:|:--:|:--:|:--:|
|![issuse-badge]|![issue-closed]|![pull-request]|![pull-closed]|
[issues-link]: https://github.com/jaredtao/TaoQuick/issues
[issuse-badge]: https://img.shields.io/github/issues/jaredtao/taoquick.svg?style=popout
[issue-closed]: https://img.shields.io/github/issues-closed/jaredtao/taoquick.svg
[pull-request]: https://img.shields.io/github/issues-pr/jaredtao/taoquick.svg
[pull-closed]: https://img.shields.io/github/issues-pr-closed/jaredtao/taoquick.svg
2019-08-03 17:47:27 +08:00
### 其它状态
2019-07-18 10:17:02 +08:00
2019-08-03 17:47:27 +08:00
|提交频率|最后一次提交|发布时间|forks|stars|
|:--:|:--:|:--:|:--:|:--:|
|![commit-active]|![commit-latest]|![release-date]|![forks-badge]|![stars-badge]|
2019-07-18 10:17:02 +08:00
[forks-badge]: https://img.shields.io/github/forks/jaredtao/taoquick.svg "forks"
[stars-badge]: https://img.shields.io/github/stars/jaredtao/taoquick.svg "stars"
[commit-active]: https://img.shields.io/github/commit-activity/w/jaredtao/taoquick.svg
[commit-latest]: https://img.shields.io/github/last-commit/jaredtao/taoquick.svg
[release-date]: https://img.shields.io/github/release-date/jaredtao/taoquick.svg
2020-10-21 18:49:59 +08:00
## 部分效果预览
2019-07-18 10:17:02 +08:00
2020-10-21 18:49:59 +08:00
### 主页
2019-07-18 10:17:02 +08:00
2020-10-21 18:49:59 +08:00
![](preview/main.png)
2019-07-18 10:17:02 +08:00
2020-10-21 18:49:59 +08:00
### 换皮肤
2019-07-18 10:17:02 +08:00
2020-10-21 18:49:59 +08:00
![](preview/skin.png)
2019-07-18 10:17:02 +08:00
2020-10-21 18:49:59 +08:00
### 多语言
2019-07-18 10:17:02 +08:00
2020-10-21 18:49:59 +08:00
![](preview/I18n.png)
2019-07-18 10:17:02 +08:00
2020-10-21 18:49:59 +08:00
### 各种按钮组件
2019-07-18 10:17:02 +08:00
2020-10-21 18:49:59 +08:00
![](preview/Buttons.png)
2019-08-03 17:47:27 +08:00
2020-10-21 18:49:59 +08:00
### 数据输入组件
![](preview/Data.png)
### 矩形框组件
![](preview/rect.png)
### 动画特效-箭头流动
![](preview/Arrow.png)
### 动画特效-跟上节奏
![](preview/byte.png)
### ShaderToy-蜗牛
![](preview/snail.png)
### ShaderToy-超级玛丽
![](preview/SuperMario.png)
2019-08-03 17:47:27 +08:00
2020-06-13 01:41:54 +08:00
2020-06-19 00:03:03 +08:00
## 开发环境
2020-10-21 18:49:59 +08:00
* Qt 5.9.0 以上
* 已兼容Qt5.15、Qt6
## 项目结构
项目结构如下
![](doc/struct1.png)
各目录说明如下表:
|目录|说明|备注|
|----|----|----|
|src|TaoQuick核心库|主要是qml代码和图片资源,以及designer支持相关的配置和脚本,不包含c++代码|
|exampes|各种示例程序|演示如何使用TaoQuick核心库,其中TaoQuickShow比较全面地展示TaoQuick的各项功能|
|3rdparty|第三方库||
|mkspecs|qmake功能的扩展||
|.github|github-actions配置|持续集成相关配置,用于自动化构建、发布|
## 核心库 TaoQuick
核心库目录为
src/TaoQuick/imports/TaoQuick/Qml
核心库结构如下
![](doc/core.png)
为了避免与Qt默认组件混淆组件名称全部以Cus开头 (Custom的缩写)
CusConfig是核心库的全局配置,主要包括字体、颜色等,所有组件都按照此配置显示
其它各目录说明如下表:
|目录|说明|备注|
|----|----|----|
|Basic|基础的组件,诸如文本、悬浮提示等|用于统一整个工程中的基础组件,方便在工程变的庞大时,做全局替换|
|CusBackground|一个简单的背景框|一般放在程序的最开始,用来吸收空白区域的鼠标焦点|
2020-10-21 19:18:34 +08:00
|CusButton|按钮|已封装一部分经常用到的按钮,也可以二次定制各种效果|
2020-10-21 18:49:59 +08:00
|CusCheckBox|勾选||
|CusComboBox|下拉框||
|CusImage|基础的图像||
|CusInput|输入框||
|CusLabel|文本标签||
|CusListView|列表|简单的定制了滚动条|
|CusPopup|弹出框||
|CusScroll|滚动条||
|CusSlider|可拖动进度条||
|CusSpinBox|调节框||
2020-10-21 19:18:34 +08:00
|CusTable|表格|需要配合特定的C++ model使用,支持以行为单位的选中、打勾、鼠标框选、反选、连选、全选等|
2020-10-21 18:49:59 +08:00
|Effect|特效|动画、页面切换效果、ShaderToy等|
|Misc|其它杂项||
## 使用核心库TaoQuick
使用核心库,只需要在项目中导入'.pri'文件即可TaoQuick组件将以本地文件或qrc资源的方式被引用。
2020-10-21 19:18:34 +08:00
此种用法, 与Qml模块、Qml C++插件等方式相比,有以下优势:
2020-10-21 18:49:59 +08:00
* 导入pri后, 不需要额外编译、生成dll或插件
* 发布程序时不需要额外拷贝资源
* 导入pri后, Qt Creater即可支持TaoQuick的Qml代码高亮、双击跳转
* 导入pri后在Qml中导入模块(import TaoQuick 1.0),即可在Qt Creater 的 designer模式中通过拖拽使用TaoQuick组件、可视化开发UI (原理: 通过脚本生成designer需要的metainfo)
2020-10-21 19:54:30 +08:00
![](preview/designer.png)
2020-10-21 18:49:59 +08:00
具体使用步骤:
1. 将src/TaoQuick文件夹拷贝到你的项目中任意位置
2. 在你的项目pro文件中,导入对应的TaoQuick文件夹中的pri文件即可
```qmake
include(TaoQuick/TaoQuick.pri)
```
或者
```qmake
include(src/TaoQuick/imports/imports.pri)
```
都可以,只要路径对应到实际的文件即可
2019-08-17 11:33:48 +08:00
2019-08-26 16:23:33 +08:00
2020-06-19 00:03:03 +08:00
***
2019-08-26 16:23:33 +08:00
2020-06-19 00:03:03 +08:00
## 联系作者
2019-08-17 11:33:48 +08:00
2020-06-19 00:03:03 +08:00
作者:武威的涛哥
2019-08-17 11:33:48 +08:00
2020-06-19 00:03:03 +08:00
欢迎联系我,乐于提供技术咨询服务,可洽谈技术支持、商业合作。
2019-08-17 11:33:48 +08:00
2020-06-19 00:03:03 +08:00
微信: xsd2410421
2019-08-17 11:33:48 +08:00
2020-06-19 00:03:03 +08:00
QQ: 759378563
2019-08-17 11:33:48 +08:00
2020-10-21 18:49:59 +08:00
邮箱: jared2020@163.com
2020-06-19 00:03:03 +08:00
2020-10-21 18:49:59 +08:00
<img src="https://gitee.com/jaredtao/jaredtao/raw/master/img/weixin_connect.jpg?raw=true" width="30.35%" height="30%" /><img src="https://gitee.com/jaredtao/jaredtao/raw/master/img/qq_connect.jpg?raw=true" width="28%" height="28%" />
2020-06-19 00:03:03 +08:00
*****
## 寻找同道中人
欢迎加入涛哥的QQ群: Qt进阶之路
此群是高质量群Qt界大佬众多不灌水闲聊日常交流技术、分享书籍、帮助解决实际问题。
2020-06-19 10:26:05 +08:00
1群734623697
2020-06-19 00:03:03 +08:00
2群342341405
<img src="https://gitee.com/jaredtao/jaredtao/raw/master/img/qqgroup.jpg?raw=true" width="28%" height="28%" /><img src="https://gitee.com/jaredtao/jaredtao/raw/master/img/qqgroup2.jpg?raw=true" width="28%" height="28%" />
******
2019-08-17 11:33:48 +08:00
## 赞助
2020-06-19 00:03:03 +08:00
觉得分享的内容还不错, 就请作者喝杯奶茶吧~~
2019-10-31 08:51:31 +08:00
<img src="https://gitee.com/jaredtao/jaredtao/raw/master/img/weixin.jpg?raw=true" width="30%" height="30%" /><img src="https://gitee.com/jaredtao/jaredtao/raw/master/img/zhifubao.jpg?raw=true" width="30%" height="30%" />
2019-08-17 11:33:48 +08:00
## 赞助列表
感谢以下网友的赞助与支持(排名不分先后)
hxhlb (花心胡萝卜工作室)
咸鱼猴
Qt侠-刘典武
2020-06-19 00:03:03 +08:00
一去、二三里
2019-08-17 11:33:48 +08:00
大樹
2020-06-19 00:03:03 +08:00
丝绸-郑天佐
寒山-居士
2019-08-17 11:33:48 +08:00
小风电子
2020-06-19 00:03:03 +08:00
Qt君
海盗船
雨田哥
游龙
Rj
重庆-胡某某
Ivy
孙十一少
田宇
power
敢敢
扣脚翁
白菜豆腐
甜不辣
Mr.Hu
秾芳教主
焖哥
蓝色幻想
Martin Zuo
windsmoon
小手冰凉
永远=没有终点
我是王大狗
2020-07-17 09:09:08 +08:00
米粒旅行
...