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

招标网站免费平台如何制作一个官网

招标网站免费平台,如何制作一个官网,淘宝客网站如何做排名,网站建设 工作室一、自定义Widget组件 1、自定义Widget组件 使用步骤采用提升法#xff08;promotion#xff09;重新定义paintEvent事件 2、实现程序 #xff08;1#xff09;创建项目#xff0c;基于QWidget #xff08;2#xff09;添加类#xff0c;为Widget组件提升类 #inclu…一、自定义Widget组件 1、自定义Widget组件 使用步骤采用提升法promotion重新定义paintEvent事件 2、实现程序 1创建项目基于QWidget 2添加类为Widget组件提升类 #include battery.h #include QPainterint Battery::powerLevel() const {return mPowerLevel; }void Battery::setPowerLevel(int powerLevel) {mPowerLevel powerLevel;repaint(); }void Battery::paintEvent(QPaintEvent *event) {Q_UNUSED(event)QPainter painter(this);QRect rect(0, 0, width(), height());painter.setViewport(rect);painter.setWindow(0, 0, 120, 50); // 设置窗口逻辑坐标painter.setRenderHint(QPainter::Antialiasing);painter.setRenderHint(QPainter::TextAntialiasing);// 绘制电池边框QPen pen;pen.setWidth(2);pen.setColor(mColorBorder);pen.setStyle(Qt::SolidLine);pen.setCapStyle(Qt::FlatCap);pen.setJoinStyle(Qt::BevelJoin);painter.setPen(pen);QBrush brush;brush.setColor(mColorBack);brush.setStyle(Qt::SolidPattern);painter.setBrush(brush);rect.setRect(1, 1, 109, 48);painter.drawRect(rect);brush.setColor(mColorBorder);painter.setBrush(brush);rect.setRect(110, 15, 10, 20);painter.drawRect(rect);// 画电量if(mPowerLevel mWarning){brush.setColor(mColorWarning);pen.setColor(mColorWarning);}else{brush.setColor(mColorPower);pen.setColor(mColorPower);}painter.setBrush(brush);painter.setPen(pen);if(mPowerLevel 0){rect.setRect(5, 5, mPowerLevel, 40);painter.drawRect(rect);}// 绘制百分比文字QFontMetrics textSize(this-font());QString powerStr QString::asprintf(%d%%, mPowerLevel);QRect textRect textSize.boundingRect(powerStr);pen.setColor(mColorBorder);painter.setPen(pen);painter.drawText(55 - textRect.width() / 2, 23 textRect.height() / 2, powerStr);}Battery::Battery(QWidget *parent) : QWidget(parent) {} 3设置标题和图标图标需要选择资源中图标直接选择文件可能无效 4实现电池电量修改 #include widget.h #include ui_widget.h#include battery.hWidget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget) {ui-setupUi(this);ui-battery-setPowerLevel( ui-horizontalSlider-value() ); }Widget::~Widget() {delete ui; }void Widget::on_horizontalSlider_valueChanged(int value) {int nPower ui-horizontalSlider-value();ui-battery-setPowerLevel(nPower);ui-label-setText(QString::asprintf(当前电量: %d%%, nPower)); } 二、自定义QtDesigner插件 1、实现程序 1创建自定义控件工程 设置分组 2将生成的dll库拷贝到Tools\QtCreator\bin\plugins\designer下 3创建项目基于QWidget 在UI编辑界面组件栏可以看到多分组MyWidget下有了Battery组件。我没做出来始终是加载失败之后测试处理 初步分析似乎因为Qt IDE是由MSVC编译所以插件必须为MSVC编译本人使用MSVC2015 64bit测试没有加载成功之后测试32bit三、静态链接库 1、静态链接库的创建和使用 1创建静态链接库 MSVC编译器生成的库后缀为“.lib”MinGW编译器生成的库后缀为.a 2使用静态库 需要使用静态库文件和h文件不需要cpp文件2、实现程序 1创建Library项目 2使用图表中的一个窗口 3创建项目调用库 4添加库 5实现功能 #include mainwindow.h #include ui_mainwindow.h #include dialogpen.h#include QPaintervoid MainWindow::paintEvent(QPaintEvent *event) {Q_UNUSED(event)QPainter painter(this);QRect rect(0, 0, width(), height());painter.setViewport(rect);painter.setWindow(0, 0, 100, 50); // 逻辑坐标painter.setPen(mPen);painter.drawRect(10, 10, 80, 30); }MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow) {ui-setupUi(this); }MainWindow::~MainWindow() {delete ui; }void MainWindow::on_actSetPen_triggered() {bool ok false;QPen pen DialogPen::getPen(mPen, ok);if(ok){mPen pen;repaint();} } 四、共享库动态链接库 1、动态库声明 1隐式加载 #if defined(DLL_LIBRARY) #define DLLSHARED_EXPORT Q_DECL_EXPORT #else #define DLLSHARED_EXPORT Q_DECL_IMPORT #endif2显示加载直接打开dll库直接解析调用函数 typedef int (*FunDef)(int);FunDef myFun (FunDef)myLib.resolve(funName); //解析dll函数 int n myFun(1); //调用函数2、实现隐式加载程序 1创建动态库工程 2导出动态库 class SHAREDLIBSHARED_EXPORT DialogPen : public QDialog3实现功能 #include mainwindow.h #include ui_mainwindow.h #include dialogpen.h#include QPaintervoid MainWindow::paintEvent(QPaintEvent *event) {Q_UNUSED(event)QPainter painter(this);QRect rect(0, 0, width(), height());painter.setViewport(rect);painter.setWindow(0, 0, 100, 50); // 逻辑坐标painter.setPen(mPen);painter.drawRect(10, 10, 80, 30); }MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow) {ui-setupUi(this); }MainWindow::~MainWindow() {delete ui; }void MainWindow::on_actSetPen_triggered() {bool ok false;QPen pen DialogPen::getPen(mPen, ok);if(ok){mPen pen;repaint();} } 3、实现显式加载程序
http://www.w-s-a.com/news/827663/

相关文章:

  • 做网站美工要学什么广东省建设厅网站首页
  • 深圳网站设计十年乐云seo网站建设 竞赛 方案
  • 新乡移动网站建设wordpress输出某一分类的文章
  • 花店网站开发设计的项目结构重庆网站建设培训班
  • 做网站的技术体系投资者互动平台官网
  • 北京网站建设公司哪家实惠企查查在线查询入口
  • 毕业设计做网站怎么样非微信官方网页自己做的网站
  • 昆明网站多端小程序设计重庆市住房和城乡建设厅网站
  • 网站制作技术人员国际新闻最新10条
  • 做同城特价的网站wordpress后台能修改模板文件
  • 网站信息可以边建设边组织产品展示网站源码php
  • 电子商务网站规划从哪些方面入手途牛企业网站建设方案
  • 莱阳网站定制易语言可以做网站嘛
  • 购物网站开发意义上海中小企业服务中心官网
  • 网站备案证书如何打开江苏网站建设电话
  • 深圳网站建设乐云seo搜索引擎优化seo目的
  • 中山城市建设集团网站网站建设设计基础
  • 网站开发流程莆田wordpress点播收费
  • 网站未及时续费浙江台州做网站的公司有哪些
  • 二级域名做网站好不好河源建网站
  • 公司网站的作用意义维护建设管理天津平台网站建设费用
  • 建设部网站如何下载国标规范上海影视公司
  • 企业官方网站地址通了网站建设
  • 专题网站可以做什么怎么做网站滑动图片部分h5
  • 什么是网站建设外包html 门户网站
  • 资阳市建设局网站微信开发公司
  • wap建站程序源码可不可以异地建设网站
  • 优秀企业网站的特点网站标签名词
  • 建材网站建设案例淄博网站建设培训
  • 纯代码添加wordpress网站底部导航宝塔自助建站源码