当前位置: 首页 > news >正文

网站建设音乐插件怎么弄网络营销的六大功能

网站建设音乐插件怎么弄,网络营销的六大功能,ui网页设计比较好培训机构,深圳网站建设工作原生的QT界面不好看,有时候需要根据美工的设计图修改样式。如果使用QML的话搞界面是快,但是QML有点儿吃内存,有时简单的功能还是用传统c的widget方便些。好在有qss,传统界面也可以美化的。QSS称为Qt Style Sheets也就是Qt样式表&a…

原生的QT界面不好看,有时候需要根据美工的设计图修改样式。如果使用QML的话搞界面是快,但是QML有点儿吃内存,有时简单的功能还是用传统c++的widget方便些。好在有qss,传统界面也可以美化的。QSS称为Qt Style Sheets也就是Qt样式表,它是Qt提供的一种用来自定义控件外观的机制。QSS大量参考了CSS的内容,只不过QSS的功能比CSS要弱很多,体现在选择器要少,可以使用的QSS属性也要少很多,并且并不是所有的属性都可以用在Qt的所有控件上。

目标任务

以下以实例介绍下自定义样式的实现,如下图所示,实现下图的效果。

 提供的美工资源有个关机的透明图标:

 如何实现?接下来详细介绍下。

详细步骤

一、新建qrc文件,添加和保存资源文件

首先新建个qrc资源文件,使用Qtcreater的话可以直接在菜单中找新建->资源文件(qrc)。当然这个文件也可以手工创建。文件内容如下image.qrc:

<RCC><qresource prefix="/"><file>qss/gray.css</file><file>image/shutdownicon.png</file><file>image/shutdownlogo.png</file><file>image/shutdownpushbutton.png</file><file>image/shutdownpushbuttonpress.png</file><file>image/spinner.png</file><file>image/tips.png</file><file>image/calendar.png</file></qresource>
</RCC>

在根目录里创建一个qss文件夹,里面创建全局样式表css文件。(建议这么搞,样式都统一放到样式表文件里,方便后续修改。不建议直接在界面上使用QtDesigner去改样式。)

二、新建css样式表文件

style.css样式文件内容如下:

QPalette{background:#e5e5e5;}QLabel,
QLineEdit,
QTextEdit,
QPlainTextEdit,
QGroupBox,
QComboBox,
QDateEdit,
QTimeEdit,
QDateTimeEdit,
QTreeView,
QListView,
QTableView,QLineEdit,
QTextEdit,
QPlainTextEdit {}QLabel#image1{/*background-image: url(:/image/shutdownlogo.png);*/
}QLabel#text1{color: #004695;font: 75 18pt "微软雅黑";
}QLineEdit[echoMode="2"] {lineedit-password-character: 9679;
}.QGroupBox {border: 1px solid #A9A9A9;border-radius: 5px;
}.QPushButton {border-style: none;border: 1px solid #A9A9A9;color: #FFFFFF;padding: 5px;/* min-height: 20px; *//* min-width: 30px; */border-radius: 40px;background: rgb(46,118,199);
}.QPushButton:hover {background: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 rgb(46,118,199), stop:1 #C1C1C1);
}.QPushButton:pressed {background: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #004695, stop:1 #004695);
}.QPushButton:disabled {color: #838383;background: #F4F4F4;
}.QPushButton#btnShutDown {background-image: url(:/image/shutdownicon.png);background-position: left;background-repeat: no-repeat;background-origin:content;padding-left:90px;text-align: right;padding-right:120px;font: 25 20pt "Microsoft YaHei";}.QPushButton#btnShutDown:pressed {background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #004695, stop:1 #004695);
}QCheckBox {color: #000000;spacing: 2px;
}QCheckBox::indicator {width: 20px;height: 20px;
}QRadioButton {color: #000000;spacing: 2px;
}QComboBox {/* border-style: none; *//* border: 1px solid #A9A9A9; */border-radius: 5px;
}QSpinBox {border-radius: 5px;
}

style.css文件内容解释,有点css基础的应该很容易看懂。最前面的一系列是统一设置控件的样式。

QLabel#image1{/*background-image: url(:/image/shutdownlogo.png);*/
}QLabel#text1{color: #004695;font: 75 18pt "微软雅黑";
}

这里的#后面跟的内容,就是你界面里指定的控件对象名称,如image1,text1等。

.QPushButton#btnShutDown:pressed {background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #004695, stop:1 #004695);
}

以上的:pressed设置按钮按下时的样式,hover是鼠标悬停上面的样式。

设置按钮的背景图片,关键属性:

1、background-position  -----  设置图标的位置

2、text-align-------------设置文本的位置            

3、background-origin-------------相对于内容框来定位背景图像

如何使用

在mainWindow窗口实例化的地方,全局加载即可。

        //设置指定样式static void setStyle(const QString &qssFile) {QFile file(qssFile);if (file.open(QFile::ReadOnly)) {QString qss = QLatin1String(file.readAll());qApp->setStyleSheet(qss);QString PaletteColor = qss.mid(20, 7);qApp->setPalette(QPalette(QColor(PaletteColor)));file.close();}}
MainWindow::MainWindow(QWidget *parent) :QWidget(parent), ui(new Ui::MainWindow) {ui->setupUi(this);setFixedSize(1280, 1024);//setWindowFlags(Qt::Window | Qt::FramelessWindowHint);myHelper::setStyle(":/qss/style.css");
}

 整理了一个全局的辅助类,方便使用。 

#ifndef MYHELPER_H
#define MYHELPER_H#include <QtCore>
#include <QtGui>#if (QT_VERSION > QT_VERSION_CHECK(5, 0, 0))#include <QtWidgets>#endifclass myHelper : public QObject {public:static void autoRunWithSystem(bool ifAutoRun, QString appName, QString appPath) {QSettings *reg = new QSettings("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", QSettings::NativeFormat);if (ifAutoRun) {reg->setValue(appName, appPath);} else {reg->setValue(appName, "");}}//设置编码为UTF8static void setTextCode(const QString sForName = "UTF-8") {
#if (QT_VERSION <= QT_VERSION_CHECK(5, 0, 0))QTextCodec *codec = QTextCodec::codecForName(sForName);QTextCodec::setCodecForLocale(codec);QTextCodec::setCodecForCStrings(codec);QTextCodec::setCodecForTr(codec);
#endif}//设置指定样式static void setStyle(const QString &qssFile) {QFile file(qssFile);if (file.open(QFile::ReadOnly)) {QString qss = QLatin1String(file.readAll());qApp->setStyleSheet(qss);QString PaletteColor = qss.mid(20, 7);qApp->setPalette(QPalette(QColor(PaletteColor)));file.close();}}//加载中文字符static void setChinese() {QTranslator *translator = new QTranslator(qApp);translator->load(":/image/qt_zh_CN.qm");qApp->installTranslator(translator);}//判断是否是IP地址static bool isIP(const QString sIP) {QRegExp RegExp("((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d?)");return RegExp.exactMatch(sIP);}//延时static void sleep(int sec) {QTime dieTime = QTime::currentTime().addMSecs(sec);while (QTime::currentTime() < dieTime) {QCoreApplication::processEvents(QEventLoop::AllEvents, 100);}}//延时static int sleep1(int command, int sec, int *state) {int ret = 0;QTime dieTime = QTime::currentTime().addMSecs(sec);while (QTime::currentTime() < dieTime) {if (((0xC7 != command && 0xC1 != command) && (*state == 2)) ||((0xC7 == command || 0xC1 == command) && (*state == 3))) {return 1;}QCoreApplication::processEvents(QEventLoop::AllEvents, 100);}ret = 2;return ret;}//窗体居中显示static void moveFormToCenter(QWidget *frm) {int frmX = frm->width();int frmY = frm->height();QDesktopWidget dwt;int deskWidth = dwt.availableGeometry().width();int deskHeight = dwt.availableGeometry().height();QPoint movePoint(deskWidth / 2 - frmX / 2, deskHeight / 2 - frmY / 2);frm->move(movePoint);}
};#endif // MYHELPER_H

CMakeLists文件

由于习惯了使用cmake,以下附上cmake的QT工程配置,CMakeList.txt文件。

cmake_minimum_required(VERSION 3.21)
project(myapp)set(CMAKE_PREFIX_PATH "D:/Qt/Qtxx/xx.xx/msvc20xx/lib/cmake")add_definitions(-D_ENABLE_LOGGING
)##设置输出目录
set(BUILD_DIRECTORY "")
set(BUILD_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../build)
####################  QT dependencies ########################
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)set(QT_VERSION 5)
set(REQUIRED_LIBS Core Gui Network Widgets)
set(REQUIRED_LIBS_QUALIFIED Qt5::Core Qt5::Gui Qt5::Network Qt5::Widgets)####################  set output directory ####################
set(BUILD_DIR ${BUILD_DIRECTORY})
set(LIB_DIR ${BUILD_DIR}/lib/Release)
set(LIB_FIX)
if (CMAKE_BUILD_TYPE MATCHES "Debug")set(LIB_DIR ${BUILD_DIR}/lib/Debug)set(LIB_FIX _d)
endif ()get_filename_component(ABSOLUTE_PATH ${LIB_DIR} ABSOLUTE)
set(LIB_DIR ${ABSOLUTE_PATH})set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIB_DIR})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LIB_DIR})
set(CMAKE_PDB_OUTPUT_DIRECTORY ${LIB_DIR})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LIB_DIR})set(LIB_DIR_FIX ${LIB_DIR})
option(USE_VS_BUILD "use visual studio build." OFF)
if (USE_VS_BUILD)set(LIB_DIR_FIX ${LIB_DIR}/bin/Debug)
endif ()
####################  set include path ####################
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/source/cpp/logger${CMAKE_CURRENT_SOURCE_DIR}/source/cpp/misc${CMAKE_CURRENT_SOURCE_DIR}/source/cpp${BUILD_DIR}/include
)####################  scan source files ####################
aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR}/source/cpp/logger SRC_FILES)
aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR}/source/cpp/misc SRC_FILES)
aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR}/source/cpp SRC_FILES)#####设置资源文件
set(RESOURCE_SOURCESimage.qrc)
####################  version config ####################
if (MSVC)set(MY_VERSIONINFO_RC "${CMAKE_CURRENT_BINARY_DIR}/VersionInfo.rc")configure_file("${CMAKE_CURRENT_SOURCE_DIR}/resource.rc.in""${MY_VERSIONINFO_RC}")
endif ()set(MY_VERSIONINFO_RC "")add_executable(${PROJECT_NAME} main.cpp mainwindow.cpp mainwindow.h mainwindow.ui ${SRC_FILES} ${RESOURCE_SOURCES} ${MY_VERSIONINFO_RC})####################  set target properties ####################
set_target_properties(${PROJECT_NAME} PROPERTIES DEBUG_POSTFIX _d)set_property(TARGET ${PROJECT_NAME} PROPERTY WIN32_EXECUTABLE true)####################  set target dependencies ####################
find_package(Qt${QT_VERSION} COMPONENTS ${REQUIRED_LIBS} REQUIRED)###############vcpkg的三方库######################################
find_package(g3log CONFIG REQUIRED)###############三方静态库#########################################
set(REDIS_CLIENT_LIB ${LIB_DIR_FIX}/redisclient${LIB_FIX}.lib)set(THIRD_LIBSg3log${REDIS_CLIENT_LIB})target_link_libraries(${PROJECT_NAME} PRIVATE ${REQUIRED_LIBS_QUALIFIED} ${THIRD_LIBS})

其他资源

【QT】QSS美化——基础知识_qt qss_Jason~shen的博客-CSDN博客

【Qt】使用Qss设置QPushButton图标和显示文本的位置-CSDN博客

https://www.cnblogs.com/csuftzzk/p/qss_button_menu.html

https://www.cnblogs.com/wangqiguo/p/4960776.html

https://www.cnblogs.com/bclshuai/p/9809679.html

CSS3 background-origin 属性 | 菜鸟教程


文章转载自:
http://poppy.sLnz.cn
http://basebred.sLnz.cn
http://seisin.sLnz.cn
http://polynia.sLnz.cn
http://eutocia.sLnz.cn
http://raise.sLnz.cn
http://bomb.sLnz.cn
http://spongiform.sLnz.cn
http://shalwar.sLnz.cn
http://treason.sLnz.cn
http://unfearing.sLnz.cn
http://alexia.sLnz.cn
http://wifie.sLnz.cn
http://trichopathy.sLnz.cn
http://tachistoscope.sLnz.cn
http://perrier.sLnz.cn
http://dago.sLnz.cn
http://chowder.sLnz.cn
http://ledge.sLnz.cn
http://controlment.sLnz.cn
http://astir.sLnz.cn
http://leiomyoma.sLnz.cn
http://unforgotten.sLnz.cn
http://unless.sLnz.cn
http://virl.sLnz.cn
http://calamographer.sLnz.cn
http://saucerful.sLnz.cn
http://tailhead.sLnz.cn
http://sezessionstil.sLnz.cn
http://fslic.sLnz.cn
http://gibberish.sLnz.cn
http://bergamasque.sLnz.cn
http://including.sLnz.cn
http://turbulence.sLnz.cn
http://thuja.sLnz.cn
http://sinal.sLnz.cn
http://mythoi.sLnz.cn
http://myna.sLnz.cn
http://eek.sLnz.cn
http://cultural.sLnz.cn
http://cella.sLnz.cn
http://biliteral.sLnz.cn
http://tetracarpellary.sLnz.cn
http://seismology.sLnz.cn
http://halobacteria.sLnz.cn
http://covert.sLnz.cn
http://birthparents.sLnz.cn
http://stamineal.sLnz.cn
http://hemimorphic.sLnz.cn
http://pigeonry.sLnz.cn
http://harle.sLnz.cn
http://slipsole.sLnz.cn
http://demagoguism.sLnz.cn
http://unblemished.sLnz.cn
http://speciation.sLnz.cn
http://overclothes.sLnz.cn
http://ransomer.sLnz.cn
http://mobbish.sLnz.cn
http://magnesium.sLnz.cn
http://hipped.sLnz.cn
http://glassiness.sLnz.cn
http://instigation.sLnz.cn
http://panbroil.sLnz.cn
http://disunite.sLnz.cn
http://surcease.sLnz.cn
http://antiradical.sLnz.cn
http://dipstick.sLnz.cn
http://eighteen.sLnz.cn
http://gynaecic.sLnz.cn
http://nonuniformity.sLnz.cn
http://darch.sLnz.cn
http://waterhead.sLnz.cn
http://ossific.sLnz.cn
http://stonecutter.sLnz.cn
http://trustfully.sLnz.cn
http://translucent.sLnz.cn
http://shortall.sLnz.cn
http://hlf.sLnz.cn
http://parasol.sLnz.cn
http://knew.sLnz.cn
http://literalise.sLnz.cn
http://curvesome.sLnz.cn
http://guff.sLnz.cn
http://paloverde.sLnz.cn
http://herodian.sLnz.cn
http://scented.sLnz.cn
http://pergameneous.sLnz.cn
http://bandsaw.sLnz.cn
http://ceiba.sLnz.cn
http://aerosiderolite.sLnz.cn
http://hazchem.sLnz.cn
http://conoscope.sLnz.cn
http://dhurna.sLnz.cn
http://doggie.sLnz.cn
http://airmobile.sLnz.cn
http://heterogamete.sLnz.cn
http://justiciable.sLnz.cn
http://nishinomiya.sLnz.cn
http://lazzarone.sLnz.cn
http://muonium.sLnz.cn
http://www.hrbkazy.com/news/73072.html

相关文章:

  • 天工网官方网站免费发帖论坛大全
  • 网站底部怎么做火蝠电商代运营靠谱吗
  • 网站建设报价网站统计分析工具的主要功能
  • 旅游网站建设策划方案天津百度网站快速优化
  • 制作书签怎么做seo优化方法
  • 包装盒在线设计网站太原seo关键词优化
  • 网站建设都需要什么发布软文的平台
  • 删除wordpress文章修订版本网站seo推广
  • 毕业季网站如何做网页济源新站seo关键词排名推广
  • 在互联网上如何赚钱淘宝关键词排名优化技巧
  • 做视频网站的条件百度收录批量查询工具
  • 北京团建网站电商运营
  • 织梦做信息类网站经典软文案例分析
  • 一般电商都是在哪些网站上做深圳seo优化
  • 顺德网站建设7starry哪些网站推广不收费
  • app跟网站的区别各大引擎搜索入口
  • 网站demo要几个人做seo的特点是什么
  • 贵州省住房和城乡建设厅官网站seo引擎搜索
  • asp和php的建站区别品牌整合营销方案
  • 哈尔滨网站小程序制作长春网站建设制作
  • php做网站需要mysql么百度一下app
  • 合肥网站关键词推广网络营销的渠道
  • 怎么查网站建设是哪家公司腾讯广告代理商加盟
  • 泰州做网站淘宝上海网络推广渠道
  • 河北 石家庄 网站建设枣庄网站seo
  • 淘宝网店开店网站建设网络平台怎么推广
  • 查域名价格东莞seo排名外包
  • 备案信息修改网站名称橙子建站怎么收费
  • 网站建设应该考虑哪些方面武汉网站seo推广
  • 草料短链接在线生成器58同城关键词怎么优化