Cef3 Qt版本参考项目
支持windows和linux:
https://cretz.github.io/doogie/
linux:
https://github.com/cretz/qt_cef_poc.git
Linux与Windows Cef3差异
1.include文件存在差异
2.Windows:CefLoadHandler.OnLoadingStateChange
与Linux:CefLoadHandler.onLoadingStateChange(大小写)
QT相关设置
参考文档:https://www.jianshu.com/p/3822addbf096
参考文档:https://blog.csdn.net/sinat_38363122/article/details/115380960
## 插件设置
默认Qt会在可执行文件所在的目录查找并加载这些插件。但是为了我们的程序目录更加简洁,可以自定义插件目录。
### 设置环境变量QT_PLUGIN_PATH
设置环境变量
```CMD
# linux
export QT_PLUGIN_PATH=plugins
# Windows
set QT_PLUGIN_PATH=plugins
```
### 代码
QT支持https网络请求
参考链接:https://blog.csdn.net/qing666888/article/details/106318741
Qt自带的老版本OpenSSL1.0.x在今年(2019)就要结束LTS支持了,那么从**Qt5.12.4**开始,Qt将启用1.1.x,新版本带来的TLS1.3,以前经典的名字叫**libeay32.dll**和**ssleay32.dll**,现在改名变成了**libcrypto-1_1.dll** 和**libssl-1_1.dll**,路径为**Qt安装路径\Tools\QtCreator\bin\libcrypto-1_1.dll和libssl-1_1.d
Cef3 Linux编译
```shell
# 安装依赖
sudo apt install make
sudo apt install cmake
sudo apt install build-essential
sudo apt install libgtk2.0-dev
sudo apt install libgtkglext1-dev
# 设置编译平台等
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug
# 编译cefclient、cefsimple
make -j4 cefclient cefsimple
# 编译libcef_dll_wrapper
make
C++基础语言
## 其他格式转换string
使用stringstream
```c#
#include <string>
#include <sstream>
using namespace std;
int main()
{
stringstream strStream;
int code = 100;
float value = 10.8;
strStream << "code:" << code << ",value:" << value;
string content = strStream.str();
return 0;
}
```
ant.design pro4.0版本, umi新增页面区块的时候,报错"只有pagesh或page目录下的页面才能插入资产"
## ant.design pro4.0版本, umi新增页面区块的时候,报错"只有pagesh或page目录下的页面才能插入资产"
网上说的使用``BABEL_CACHE=none npm start``无法解决该问题,目前通过修改index.tsx文件内容,让程序重新加载页面后可以成功新增区块。
QT 窗体因系统分辨率调整后,出现布局错乱问题
# Q:
使用qt开发linux下的widget,窗体因为调整系统分辨率(主要为调整为比实际窗体还要小的情况下),导致布局错乱。
# A:
尝试如下方案后生效:
修改窗口QMainWindow类的minimumsize属性,设置为需要的最小值,或者是固定大小即可。
Ant Design Pro5.0开发教程
## 安装配置环境
安装Nodejs,官网地址:[https://nodejs.org/](https://nodejs.org/);
配置国内镜像源
```shell
# 配置指向源
# cnpmjs.org
$ npm config set registry http://registry.cnpmjs.org
# npm.taobao.org
$ npm config set registry http://registry.npm.taobao.org
```
安装依赖:``npm i``
## 构建项目
参考地址:[https://ant-design-pro.gitee.io
Cef3菜单定制
继承实现类: public CefContextMenuHandler
```
// 删除&添加右键菜单
virtual CefRefPtr<CefContextMenuHandler> GetContextMenuHandler() override
{
return this;
}
void OnBeforeContextMenu(CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame,
CefRefPtr<CefConte