精华内容
下载资源
问答
  • Qt5开发实战

    2018-04-30 10:15:22
    Qt5开发实战pdf书籍,带目录,方便开发,目前最好的Qt开发书籍
  • qt5开发实战

    2019-04-03 09:15:11
    书籍qt5开发实战,这个方面没有研究,所以没有源码打包附上,只是纯粹的书籍资料
  • QT5开发实战源码下载

    2017-01-06 13:51:53
    QT5开发实战源码
  • QT5开发实战书签版

    2018-10-30 17:35:50
    QT5开发实战篇 带书签的可以下载看看 快速入门 的
  • Qt5开发实战.rar

    2017-12-26 17:52:50
    Qt5开发实战 图灵图书系列 韩国著名专家 金大陈思密达著作
  • 非常好的Qt5开发实战pdf格式,非常好的Qt5开发实战pdf格式
  • QT5开发实战源码.7z

    2019-07-26 11:39:16
    QT5开发实战源码,书籍的源码,本人已经验证可以正常运行
  • Qt5开发实战(2积分)

    2017-12-28 10:49:14
    Qt5开发实战 图灵图书系列 韩国著名专家 金大陈思密达著作
  • QT5开发实战 高清

    2018-11-21 13:36:15
    本书在全面阐述Qt基本功能的基础上,对新增的功能和服务进行了重点介绍。同时运用大量示例,集中讲解应用程序的开发方法和技巧,使读者通过实际动手操作迅速获得业务中必备的相关知识与经验。
  • Qt5开发实战pdf

    千次阅读 2018-02-09 16:04:00
    下载地址:网盘下载内容简介······Qt支持C++、Python、Ruby、Perl等多种编程语言,常规用户应用程序、多媒体、后端系统管理、...同时运用大量示例,集中讲解了应用程序的开发方法、技巧和必需的Qt API。读者通...

    下载地址:网盘下载

     

     

     

    内容简介  · · · · · ·

    作者简介  · · · · · ·

    金大䑐

    计算机通信与安全专业硕士,曾开发计算机网络及安全相关软件、基于嵌入式的影像处理、Automotive、HTML5、文件系统应用软件等各类软件,目前关注面向多媒体计算环境用户的UX框架,并研究大量相关主题。著有《Qt实战编程》《MeeGo编程完美指南》等,现在负责维护Qt开发人员社区网站qt-dev.com。

    E-mail : dorosy.kim@gmail.com

    Qt开发人员社区 : http://www.qt-dev.com

    目录  · · · · · ·

    第1章 概述  1
    第2章 有用的工具和qmake  6
    2.1 Qt Creator IDE  6
    2.2 Qt Assistant  14
    2.3 Qt Designer  15
    2.4 qmake  16
    第3章 GUI设计与制作  19
    3.1 基础控件  19
    3.1.1 QCheckBox和QButtonGroup  22
    3.1.2 QComboBox  25
    3.1.3 QCommandLinkButton  26
    3.1.4 QDate类和QDateEdit控件  27
    3.1.5 QTime类和QTimeEdit控件  30
    3.1.6 QDateTime类和QDateTimeEdit控件  33
    3.1.7 QDial  35
    3.1.8 QSpinBox和QDoubleSpinBox   36
    3.1.9 QPushButton和QFocusFrame  39
    3.1.10 QFontComboBox   41
    3.1.11 QLabel和QLCDNumber  43
    3.1.12 QLineEdit  45
    3.1.13 QMenu和QMenuBar   47
    3.1.14 QProgressBar  50
    3.1.15 QRadioButton  51
    3.1.16 QScrollArea  52
    3.1.17 QScrollBar  53
    3.1.18 QSizeGrip  55
    3.1.19 QSlider  57
    3.1.20 QTabWidget   58
    3.1.21 QToolBar和QAction   60
    3.1.22 QWidget   62
    3.1.23 QTabBar   67
    3.1.24 QToolBox   68
    3.1.25 QToolButton   69
    3.2 布局管理器   70
    3.3 高级控件   73
    3.3.1 QColumnView   74
    3.3.2 QDataWidgetMapper   75
    3.3.3 QDesktopWidget   77
    3.3.4 QCalendarWidget   79
    3.4 使用Designer构建GUI   81
    3.4.1 控件和信号槽使用示例   84
    3.4.2 Calculator Form示例   86
    3.5 对话框   88
    3.5.1 普通对话框   88
    3.5.2 用户自定义对话框   97
    3.6 主窗口   98
    3.7 模型/视图结构和数据绑定控件   101
    3.7.1 模型/视图结构   102
    3.7.2 使用模型类和视图控件   103
    3.8 用户自定义控件和插件   107
    3.8.1 实现用户自定义控件   109
    3.8.2 插件制作及布局   118
    第4章 信号与槽   128
    第5章 数据类型和有用的数据操作类   131
    5.1 比较和判断变量的函数   133
    5.2 数据类   136
    5.3 容器类   154
    5.4 字符串类   159
    第6章 文件输入输出  163
    第7章 图形  171
    7.1 使用QPainter类的图形  171
    7.1.1 QPainter的基本绘图  172
    7.1.2 渐变  179
    7.1.3 转换  182
    7.1.4 组合  184
    7.2 图形视图框架  185
    7.2.1 图形视图架构  187
    7.2.2 图形视图的坐标  190
    7.2.3 图形视图的主要特点  191
    7.2.4 事件处理  193
    7.2.5 用户自定义QGraphicsItem   194
    7.2.6 QGraphicsEffect   197
    7.3 使用Qt OpenGL模块的3D 图形  202
    7.3.1 用于渲染3D图形的QGLWidget类  203
    7.3.2 Hello OpenGL示例  206
    7.3.3 使用硬盘加速器的2D图形渲染  212
    7.3.4 QPainter类的复绘  218
    7.4 可缩放向量图形  224
    第8章 动画框架和状态机  227
    8.1 动画框架和类  228
    8.2 动画和状态机  235
    第9章 线程  238
    9.1 QThread类  242
    9.2 多线程编程  244
    9.3 线程等待条件  247
    9.4 使用信号量进行同步  249
    9.5 使用QtConcurrent的多线程  252
    第10章 容器类和迭代器类  254
    10.1 Java风格的迭代器模式  255
    10.2 STL风格的迭代器模式  257
    10.3 使用foreach关键字访问迭代器  259
    第11章 XML  261
    11.1 使用数据流的XML数据处理  263
    11.2 文档对象模型(DOM)   266
    11.3 SAX模式  269
    第12章 数据传输和网络编程  273
    12.1 网络  273
    12.1.1 使用QTcpSocket和QTcpServer进行TCP编程  277
    12.1.2 使用QUdpSocket的UDP   285
    12.1.3 主机名和DNS查询  291
    12.1.4 HTTP协议  297
    12.1.5 承载管理  306
    12.1.6 基于服务器端/客户端的聊天示例  307
    12.2 QtWebKit  314
    12.2.1 QtWebKit 模块提供的类  316
    12.2.2 DOM 查询  323
    12.2.3 QtWebKit模块环境下的JQuery应用  325
    12.2.4 QtWebKit和QObject模型间的网桥  330
    12.2.5 混合客户端应用程序示例  336
    12.3 进程间通信  339
    12.3.1 TCP/IP  340
    12.3.2 共享内存  341
    12.3.3 D-Bus协议  346
    12.3.4 QProcess  353
    第13章 多媒体  355
    13.1 音频组件  356
    13.2 视频组件  359
    13.3 camera组件  362
    13.4 收音机组件  364
    第14章 数据库  365
    14.1 数据库和SQL简介  367
    14.2 关联和支持数据库的驱动  369
    14.3 使用SQL语句的数据库查询  377
    14.4 Model类  383
    14.5 列表视图应用  386
    14.6 SQL 记录文件字段和GUI 控件映射  388
    14.7 Cached列表示例  392
    14.8 Drill Down示例  395
    第15章 Qt测试框架  405
    15.1 单元测试  409
    15.2 数据驱动测试  410
    15.3 模拟GUI事件  412
    15.4 GUI事件重复测试  414
    15.5 基准测试  415
    第16章 Qt Quick与QML  418
    16.1 Qt Quick项目创建和有用的工具  419
    16.2 基本类型和扩展数据类型  421
    16.3 对象  427
    16.3.1 类型  428
    16.3.2 定义项目属性  433
    16.3.3 Repeater和Loader  436
    16.3.4 转换  437
    16.4 用户输入和事件处理  438
    16.5 项目定位   444
    16.6 State与Transition   446
    16.7 动画   450
    16.8 数据的显示   456
    16.9 模块化编程   461
    16.10 图形效果   466
    16.11 有用的QML类型   489
    16.12 Canvas   492
    16.13 集成QML和C++   495
    16.14 多媒体   500
    第17章 Qt应用程序的发布   504
    17.1 多种平台下Qt应用程序的发布   504
    17.1.1 Unix和Linux   504
    17.1.2 Windows   505
    17.1.3 Mac OS X   506
    17.1.4 Android平台Qt应用程序的发布   507

     

     

     

     

    下载地址:网盘下载

     

    转载于:https://www.cnblogs.com/long12365/p/9730504.html

    展开全文
  • [Qt5开发及实例(第2版)(含CD光盘1张)][陆文周][程序源代码].rar
  • 本书讲解的是Qt目前的最新版本Qt5,在全面阐述Qt基本功能的基础上,对新增的功能和服务进行了重点介绍。同时运用大量示例,集中讲解应用程序的开发方法和技巧,使读者通过实际动手操作迅速获得业务中必备的相关知识...
  • 1、新建一个QtGUI应用,基类选择QWidget,取消创建界面,添加资源文件 2、widget.h中 #ifndef WIDGET_H #define WIDGET_H #include #include #include class Widget : public QWidget { Q_OBJECT ...

    1、新建一个QtGUI应用,基类选择QWidget,取消创建界面,添加资源文件

    2、widget.h中

    #ifndef WIDGET_H
    #define WIDGET_H
    
    #include <QWidget>
    #include <QCheckBox>
    #include <QButtonGroup>
    
    class Widget : public QWidget
    {
        Q_OBJECT
    
    public:
        Widget(QWidget *parent = 0);
        ~Widget();
    
    private:
        QButtonGroup *chk_group[2];
    
        QCheckBox *exclusive[3];
        QCheckBox *non_exclusive[3];
    
    private slots:
        void chkChanged();
    };
    
    #endif // WIDGET_H

    widget.cpp中

    #include "widget.h"
    #include <QDebug>
    #include <QString>
    Widget::Widget(QWidget *parent)
        : QWidget(parent)
    {
        QString str1[3] = {"游戏", "Offices", "Develop"};
        QString str2[3] = {"P&rogramming", "Q&t", "O&S"};
    
        chk_group[0] = new QButtonGroup(this);
        chk_group[1] = new QButtonGroup(this);
    
        int xpos = 30;
        int ypos = 30;
    
        for(int i = 0; i < 3; ++i){
            exclusive[i] = new QCheckBox(str1[i], this); //可以在多个项目中多选
            exclusive[i]->setGeometry(xpos, ypos, 100, 30);
            chk_group[0]->addButton(exclusive[i]);  //分组
    
            non_exclusive[i] = new QCheckBox(str2[i], this);
            non_exclusive[i]->setGeometry(xpos + 120, ypos, 100, 30);
            chk_group[1]->addButton(exclusive[i]);
    
            connect(non_exclusive[i], SIGNAL(clicked()), this,
                                  SLOT(chkChanged()));
    
            ypos += 40;
        }
        chk_group[0]->setExclusive(false);  //单选
        chk_group[1]->setExclusive(true);   //多选
    
            exclusive[0]->setIcon(QIcon(":resources/browser.png"));
            exclusive[1]->setIcon(QIcon(":resources/calendar.png"));
            exclusive[2]->setIcon(QIcon(":resources/chat.png"));
    
            non_exclusive[0]->setIcon(QIcon(":resources/editor.png"));
            non_exclusive[1]->setIcon(QIcon(":resources/mail.png"));
            non_exclusive[2]->setIcon(QIcon(":resources/users.png"));
    }
    
    Widget::~Widget()
    {
    
    }
    
    void Widget::chkChanged()
    {
        for(int i = 0 ; i < 3 ; i++)
        {
            if(non_exclusive[i]->checkState())
            {
                qDebug("checkbox %d selected ", i+1);
            }
        }
    }
    
    

    215ed9e7d8bf5330caa93aac082c2c67bea.jpg

     

    转载于:https://my.oschina.net/u/3919756/blog/2052277

    展开全文
  • QPen pen(Qt::blue, 3, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin); painter.setPen(pen); painter.drawEllipse(rect1); //画椭圆 pen.setStyle(Qt::DashLine); painter.setPen(pen); painter.drawEllipse...
    #include <QPainter>
    #include <QFont>
    void MainWindow::paintEvent(QPaintEvent *)
    {
        QPainter painter;
        painter.begin(this);
    
        QPen pen(Qt::black);
        pen.setStyle(Qt::SolidLine);
        pen.setWidth(20);
    
        QPointF p1[3] = {
            QPointF(30.0, 80.0),QPointF(20.0, 40.0), QPointF(80.0, 60.0)
        };
        QPointF p2[3] = {
            QPointF(130.0, 80.0), QPointF(120.0, 40.0), QPointF(180.0, 60.0)
        };
        QPointF p3[3] = {
            QPointF(230.0, 80.0), QPointF(220.0, 40.0), QPointF(280.0, 60.0)
        };
    
        pen.setJoinStyle(Qt::MiterJoin);
        painter.setPen(pen);
        painter.drawPolyline(p1, 3);
    
        pen.setJoinStyle(Qt::BevelJoin);
        painter.setPen(pen);
        painter.drawPolyline(p2, 3);
    
        pen.setJoinStyle(Qt::RoundJoin);
        painter.setPen(pen);
        painter.drawPolyline(p3, 3);
    
        painter.end();
    }
    

    8d2bc65ac0164a48a7b132bd3175d26e411.jpg

    画笔的连接风格

    #include <QPainter>
    #include <QFont>
    void MainWindow::paintEvent(QPaintEvent *)
    {
        QPainter painter;
        painter.begin(this);
    
    
        QPen pen(Qt::black);
        pen.setStyle(Qt::SolidLine);
        pen.setWidth(20);
    
            pen.setCapStyle(Qt::FlatCap);
            painter.setPen(pen);
            painter.drawLine(30, 30, 200, 30);
    
            pen.setCapStyle(Qt::SquareCap);
            painter.setPen(pen);
            painter.drawLine(30, 70, 200, 70);
    
            pen.setCapStyle(Qt::RoundCap);
            painter.setPen(pen);
            painter.drawLine(30, 110, 200, 110);
    
        painter.end();
    }
    

    6deff8ab4e913c5b4f28ff7f45ceb6f6b53.jpg

    画笔的三种边角。

    void MainWindow::paintEvent(QPaintEvent *)
    {
        QPainter painter;
        painter.begin(this);
    
        QRect rect1(10.0, 20.0, 80.0, 50);
        QRect rect2(110.0, 20.0, 80.0, 50.0);
        QRect rect3(210.0, 20.0, 80.0, 50.0);
        QRect rect4(10.0, 100.0, 80.0, 50.0);
        QRect rect5(110.0, 100.0, 80.0, 50.0);
        QRect rect6(210.0, 100.0, 80.0, 50.0);
    
            QPen pen(Qt::blue, 3, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin);
            painter.setPen(pen);
            painter.drawEllipse(rect1);  //画椭圆
    
            pen.setStyle(Qt::DashLine);
            painter.setPen(pen);
            painter.drawEllipse(rect2);
    
            pen.setStyle(Qt::DotLine);
            painter.setPen(pen);
    
            painter.drawEllipse(rect3);
    
            pen.setStyle(Qt::DashDotLine);
            painter.setPen(pen);
    
            painter.drawEllipse(rect4);
    
            pen.setStyle(Qt::DashDotDotLine);
            painter.setPen(pen);
            painter.drawEllipse(rect5);
    
            pen.setStyle(Qt::CustomDashLine);
            painter.setPen(pen);
            painter.drawEllipse(rect6);
        painter.end();
    }

    045ea8dc64d0c145fadc0bde52fb70b238c.jpg

    设置画笔的轮廓

    --

     

    转载于:https://my.oschina.net/u/3919756/blog/1942405

    展开全文
  • 5、圆心渐变QRadialGradient void Widget::paintEvent(QPaintEvent *event) { QPainter painter; painter.begin(this); QRadialGradient radg(100, 100, 50, 120, 120); //在圆心(100, 100),半径50的圆上...

    1、新建QT GUI, 基类选择QWidget,取消“创建界面”

    2、在widget.h中添加#include <QPainter>和重写绘画事件定义:
     * protected:
        void paintEvent(QPaintEvent *event);
    3、在widget.cpp中添加重绘事件void Widget::paintEvent(QPaintEvent *event)

    4、线性渐变QLinearGradient

    
    void Widget::paintEvent(QPaintEvent *event)
    {
        QPainter painter;
    
        painter.begin(this);
        QLinearGradient ling(QPointF(70, 70), QPoint( 140, 140 ) );  //从起点到终点的渐变
        ling.setColorAt(0, Qt::blue);  //起点到中心要显示的颜色
        ling.setColorAt(1, Qt::green);
        ling.setSpread( QGradient::PadSpread );   //默认显示模式
    
        QBrush brush(ling);
        painter.setBrush(brush);
        painter.drawRect(0, 0, 200, 200);
    
        painter.end();
    }
    

    b6f33a50abdd0f62f8ba766f59529b45c3a.jpg

    void Widget::paintEvent(QPaintEvent *event)
    {
        QPainter painter;
    
        painter.begin(this);
        QLinearGradient ling(QPointF(70, 70), QPoint( 140, 140 ) );  //从起点到终点的渐变
        ling.setColorAt(0, Qt::blue);  //起点到中心要显示的颜色
        ling.setColorAt(1, Qt::green);
        ling.setSpread( QGradient::RepeatSpread );   //默认显示模式
    
        QBrush brush(ling);
        painter.setBrush(brush);
        painter.drawRect(0, 0, 200, 200);
    
        painter.end();
    }
    

    2a1251ee16dacfb2918a95a207106d2d9b8.jpg

    void Widget::paintEvent(QPaintEvent *event)
    {
        QPainter painter;
    
        painter.begin(this);
        QLinearGradient ling(QPointF(70, 70), QPoint( 140, 140 ) );  //从起点到终点的渐变
        ling.setColorAt(0, Qt::blue);  //起点到中心要显示的颜色
        ling.setColorAt(1, Qt::green);
        ling.setSpread( QGradient::ReflectSpread );   //默认显示模式
    
        QBrush brush(ling);
        painter.setBrush(brush);
        painter.drawRect(0, 0, 200, 200);
    
        painter.end();
    }
    

    00e754828b1a1e6cd582cc925880f6a4df7.jpg

    5、圆心渐变QRadialGradient

    void Widget::paintEvent(QPaintEvent *event)
    {
        QPainter painter;
        painter.begin(this);
    
        QRadialGradient radg(100, 100, 50, 120, 120);  //在圆心(100, 100),半径50的圆上渐变。渐变起点是(120, 120)
        radg.setColorAt( 0, Qt::black );
        radg.setColorAt( 1, Qt::white );
        //radg.setSpread(QGradient::PadSpread);   //默认
        QBrush brush(radg);
        painter.setBrush(brush);
        painter.drawRect(0, 0, 200, 200);
        painter.end();
    }
    

    0eaec383eec476427f07448aba36047eb41.jpg

     

    void Widget::paintEvent(QPaintEvent *event)
    {
        QPainter painter;
        painter.begin(this);
    
        QRadialGradient radg(100, 100, 50, 120, 120);  //在圆心(100, 100),半径50的圆上渐变。渐变起点是(120, 120)
        radg.setColorAt( 0, Qt::black );
        radg.setColorAt( 1, Qt::white );
        radg.setSpread(QGradient::RepeatSpread);
        QBrush brush(radg);
        painter.setBrush(brush);
        painter.drawRect(0, 0, 200, 200);
        painter.end();
    }

    ecf0468788a6659f383698f70dd8938a622.jpg

    void Widget::paintEvent(QPaintEvent *event)
    {
        QPainter painter;
        painter.begin(this);
    
        QRadialGradient radg(100, 100, 50, 120, 120);  //在圆心(100, 100),半径50的圆上渐变。渐变起点是(120, 120)
        radg.setColorAt( 0, Qt::black );
        radg.setColorAt( 1, Qt::white );
        radg.setSpread(QGradient::ReflectSpread);
        QBrush brush(radg);
        painter.setBrush(brush);
        painter.drawRect(0, 0, 200, 200);
        painter.end();
    }

    a821d19ed104822fbf983f51169cd2f8412.jpg

    6、坐标角度渐变QConicalGradient

    void Widget::paintEvent(QPaintEvent *event)
    {
        QPainter painter;
        painter.begin(this);
    
        QConicalGradient cong( 100, 100, 45.0 );  //在(100, 100)坐标上以45°为中心渐变
        cong.setColorAt( 0, Qt::black );
        cong.setColorAt( 1, Qt::white );
    
        QBrush brush(cong);
        painter.setBrush(brush);
        painter.drawRect(0, 0, 200, 200);
    
    
        painter.end();
    }

    dd55b92bf994e67f657aec22e6421f53281.jpg

    转载于:https://my.oschina.net/u/3919756/blog/1942433

    展开全文
  • Qt Creator快速入门(第3版)、Qt5开发及实例(第3版)、Qt 5开发实战 请教这三本书哪本比较好,讲解比较清晰,入门比较容易,学起来比较有获得感的? 我买了其中一本,才看了几章,发现有的内容讲得不是很清晰。
  • * 文件-->新建文件/项目--->Qt---> Qt Resource File * 3、在widget.h中添加#include 和重写绘画事件定义: * protected: void paintEvent(QPaintEvent *event); * 4、在widget.cpp中添加重绘事件 */ 1、...
  • * 文件-->新建文件/项目--->Qt---> Qt Resource File * 3、在widget.h中添加#include 和重写绘画事件定义: * protected: void paintEvent(QPaintEvent *event); * 4、在widget.cpp中编写重绘事件 */ 1、...
  • 1、对话框  QInputDialog::getInt(this, "标题名... 参数4、5、6、7分别是:默认值,最小值,最大值,判断函数执行结果的bool类型。  getDouble的参数7是小数的位数  getItem( , , , &items(一个QStringL...
  • QtQt Quick开发实战精解》主要讲解了5Qt综合应用程序的开发过程和Qt Quick的相关内容。《QtQt Quick开发实战精解》内容主要包括两部分:第一部分是多文档编辑器、方块游戏、音乐播放器、数据管理系统、...
  • QtQt Quick开发实战精解》主要讲解了5Qt综合应用程序的开发过程和Qt Quick的相关内容。《QtQt Quick开发实战精解》内容主要包括两部分:第一部分是多文档编辑器、方块游戏、音乐播放器、数据管理系统、...
  • QtQt Quick开发实战精解,列举了5个例子:多文档编辑器,方块游戏,音乐播放器,数据管理系统,局域网聊天工具
  • Qt5开发+实战教程

    2017-12-26 09:33:57
    qt5教程,有利于学习qt5调用,必备良药!!!!!!!!!!!!!!!!!!
  • 霍亚飞, Qt Creator快速入门_第三版__霍亚飞编著,QT5 编程入门.霍亚飞(详细书签),Qt及Qt Quick开发实战精解,源码
  • 下一个,前一个,关于,关于Qt等菜单动作。 /****************1-7*********************/ 8.保存窗口设置 9.自定义右键 10.显示光标所在行和列 11.窗口标题,工具栏标题,状态栏显示,和各个动作的状态提示
  • qt5中 QGraphicsItem::rotate已经不再使用,而是使用setRotation。 但setRotation设置围绕Z轴的顺时针旋转角度(以度为单位),比如setRotation(90)是旋转90度,但setRotaton不能持续旋转,比如我按旋转按钮是,...

空空如也

空空如也

1 2 3 4 5 ... 17
收藏数 321
精华内容 128
关键字:

qt5开发实战