介绍一下ElaWidgetTools的基础使用方法
ElaWidgetTools介绍
基于QT-Widget开发的FluentUI风格的组件库,同时提供不限于组件的常用集成功能;目前Main分支支持QT5.12以上所有版本(Linux为QT5.15以上),推荐版本为QT6.4.3和QT6.6.2;
在项目中使用
构建dll
Clone下来并使用QtCreater打开,项目是CMaker,所以说打开的是CMakeLists.txt

选择和你项目一致的版本,使用release构建
在根目录下即可得到elawidgettools.dll和elawidgettools.lib
添加到自己项目
在项目文件夹中创建lib文件夹和include文件夹

把elawidgettools.dll和elawidgettools.lib放到lib文件夹
把ElaWidgetTools-main\src\include中的文件放到include文件夹
接下来打开自己项目的cmakelists
首先要把include文件夹包含进来
include_directories(
include
)然后再add_executable中添加qrc
include/ElaWidgetTools.qrc最后链接目标库,再target_link_libraries中添加
${CMAKE_CURRENT_SOURCE_DIR}/lib/elawidgettools.lib大功告成,这是完整的cmakelist示例仅供参考:
cmake_minimum_required(VERSION 3.16)
project(Test VERSION 0.1 LANGUAGES CXX)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Qt6 REQUIRED Widgets Multimedia MultimediaWidgets NetWork)
set(PROJECT_SOURCES
main.cpp
mainwindow.cpp
mainwindow.h
mainwindow.ui
)
add_executable(${PROJECT_NAME} ${PROJECT_SOURCES}
include/ElaWidgetTools.qrc #这里添加了
res.qrc)
#这里添加了
include_directories(
include
)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Widgets Qt6::Multimedia Qt6::MultimediaWidgets Qt6::Network
${CMAKE_CURRENT_SOURCE_DIR}/lib/elawidgettools.lib#这里添加了
)可以这样修改main.cpp来测试是否成功
//#include "mainwindow.h"
#include <QApplication>
#include "ElaApplication.h"
#include "ElaWindow.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
ElaApplication::getInstance()->init();
ElaWindow w;
w.show();
return a.exec();
}如果没问题的话应该会有这个界面
在项目中使用
窗口修改
.h中在添加头文件的基础上把
class MainWindow : public QMainWindow修改为
class MainWindow : public ElaWidget 或者 ElaWindow即可,widget和window看自己需求
当然cpp里也要修改为Ela
MainWindow::MainWindow(QWidget *parent)
: ElaWindow(parent) //此处修改
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
}之后需要在main.cpp中初始化
#include "mainwindow.h"
#include <QApplication>
#include "ElaApplication.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
eApp->init(); //初始化
return a.exec();
}使用控件
控件的使用除了在cpp里创建外,部分控件(有继承关系的话)还可以用界面设计中的“提升为”功能。当然,不推荐这么做。

还没有评论
欢迎留下你的观点,保持交流的清晰和友好。
写下评论
请先使用 GitHub 登录,之后就可以评论。