自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 QSqlQuery的execBatch方法准实时写oracle数据库

在这个实例中创建一个接收线程,同时启动三个任务,每个任务对应一个准实时写数据库线程,数据需要写入29张表中,每个任务的数据包频率不小于200包/秒,对于接收线程来说数据包频率达到不小于600包/秒,经过上百此测试显示不会丢一个包,延时不超过3秒,以下代码只贴出了重要部分代码,数据库表只示意性地写了两张表。1、首先在全局头文件中创建数据结构:typedef struct _DB_DATA_BUFFER{struct timeval tv_RecvTime;UINT32 DataLen;...

2020-08-24 19:51:28 1469

原创 J_8 绘图与GraphicsView、QGraphicsScene、QGraphicsProxyWidget

1、绘图可以简单地理解成有一个视图GraphicsView,在这个视图中可以加载多个场景QGraphicsScene,多个场景中加载多个QGraphicsItem对象;2、QGraphicsProxyWidget的作用是为在场景中嵌入QWidget,例如QPushButton, QFontComboBox,QFileDialog等,提供一个代理层,QGraphicsProxyWidget也是一个QGraphicsItem对象;3、QGLWidget是一个用来渲染OpenGL图形的控件,它将OpenG

2020-07-18 08:06:22 461

原创 J_7 如何设计在多个类之间传递数据:建立自定义信号和槽函数

接着上一讲的软件项目,我们这个实例要实现Form2中被选中的表格数据,传递到Form1表格中显示,Qt的信号-槽非常灵活方便,但怎么用好它,每个程序员的设计是不一样的,本实例中如何实现多个类之间传递数据呢?1、首先,把握一个原则,要想两个类之间能传递数据,必须先把这个两个类new出来;2、用connect连接这两个类,在发送数据的类定义一个信号SIGNAL,在接收数据类中定义一个槽函数;3、另外,传递数据经常用到结构体数据,在本实例的项目中,添加一个公共头文件l_global.h文件,在头文件中

2020-07-18 08:00:45 405

原创 J_6 重写动态生成的QComboBox控件、QCheckBox控件鼠标响应槽函数

1、接着上一讲的软件项目,修改方法void Form2::addCellWidget(int row)的代码如下:void Form2::addCellWidget(int row){ QComboBox* myCobBox = new QComboBox(); myCobBox->setObjectName(QString::number(row)); connect(myCobBox,SIGNAL(currentIndexChanged(QString)),this..

2020-07-13 14:36:08 752

原创 J_5 QTableWidget表格的单元格添加QComboBox控件、QCheckBox控件

1、接着上一讲的软件项目,如视频所示,在form2.ui中拖上一个TableWidget控件和一个按钮,并设置form2布局为栅格布局;2、接着上一讲的方法,如视频所示,添加鼠标点击响应方法:void Form2::on_tableWidget_itemClicked(QTableWidgetItem *item){ currentRow = item->row();}获取当前鼠标点击表格的行号currentRow ;3、在form2.h中,添加两个方法和一些私有变.

2020-07-11 13:56:50 866

原创 J_4 使用QTableView和在QTableView上右键增加菜单

1、接着上一讲的软件项目,如视频所示,在form1.ui中拖上一个TableView控件,并设置form1布局为栅格布局;2、如视频所示,右键点击QTableView,点击“go to slot”,选择“clicked()”,在form1.cpp中自动添加了方法:void Form1::on_tableView_clicked(const QModelIndex &index),在这个方法中,添加代码:theIndex = index;获得鼠标点击该行时的 QModelIndex数据结构

2020-07-11 09:46:00 694

原创 J_3 如何在一个MainWindow页面加载、切换多个页面

1、如视频所示,在MainWindow右键点击添加工具条;2、在MainWindow中随意添加一个控件,我们添加一个button吧,然后在窗口上点击右键,选择布局,选择栅格布局,这时候窗口中的任何控件都可以随着窗口最大化、最小化了;因为我们这个实例中并不需要这个button,现在删除button,为什么在这里需要添加这个控件然后又删除呢?是因为如果窗口中一个控件都没有时,点击右键是不能给它加上布局的;3、在Action Editor窗口添加两个Action,分别是Page1、Page2,然后把他们拖

2020-07-11 09:43:41 456

原创 J_2 Qt Creator如何Debug你的程序并查看变量值和变量内存值

1、接着用在上一篇中项目做实例,首先在 MainWindow .cpp的头上加入头文件:#include <QDebug>2、在void MainWindow::on_pushButton_clicked()方法中加如下代码: int a = 10; int b; memcpy(&b, &a ,4); //a的内存拷贝到b的内存上; qDebug()<<"b: "<<b; //打印输出b的值;

2020-07-11 09:41:22 3612 1

原创 J_1 从零基础开始快速入门Qt开发

1、在你的windows电脑上安装ubuntu,使你的电脑拥有双系统,或者通过其它电脑下载ubuntu镜像安装文件,就像安装windows系统那样,安装ubuntu到你的裸机上,Ubuntu是一个以桌面应用为主的Linux操作系统,相关的安装文章在网上有很多,就不在这里赘述了;2、unbuntu默认是不开启root用户的,我们为了在编程过程中不要老是被权限所困扰,在此我们要开启root用户,可以参考https://blog.csdn.net/sunxiaoju/article/details/51993

2020-07-11 09:38:38 504

原创 八、如何实现分割界面及四分屏

关键字:QSplitter、QGridLayout1、界面设计中经常需要左边是树结构,点击树的节点在右边窗口显示内容,左边和右边的分界线是可以左右移动的,这时就需要用到QSplitter控件,在MainWindow.ui设计中,拖入控件QTreeWidget和一个QWidget控件,QWidget控件为右窗口;2、同时选中这两个控件,点击右键,选择“Lay out”,再选择“Lay out Horizontally in splitter”;3、右键点击MainWindow,选择“Lay out”,再

2020-07-03 23:56:38 2820

原创 七、QTreeWidget的右键点击菜单及节点包含数据结构

关键字:QTreeWidget、setData、数据结构1、在QTreeWidget控件的编程过程中,常用的用户需求是增加右键点击菜单,比如代码如下;void MainWindow::initPage(){ mAddEquip = new QAction(this); mAddEquip->setText("新增设备"); connect(mAddEquip,SIGNAL(triggered()),this,SLOT(AddEquip())); mUpdateEq...

2020-07-03 06:00:07 1197

原创 六、Qt widget应用、C++、qml混合编程之五————动态生成QML表格

关键词:TableView,TableViewColumn,timerEvent1、建立一个中间层TableModel类,更新qml图表的数据在这个类中完成,该类继承自QAbstractTableModel,主要是重写QAbstractTableModel类的如下方法:int rowCount(const QModelIndex &parent = QModelIndex()) const override;int columnCount(const QModelIndex &par

2020-07-02 00:44:51 1012

原创 五、LCD效果的QML时间显示

关键词:LCD Number控件,字体,定时器,布局1、QML没有类似与Qt Widgets中的LCD Number控件,可以在https://www.dafont.com/theme.php?cat=302下载LCD效果的字体DS-Digital2、把字体文件添加到Resources中,如何添加参见第一篇文章;3、SendTime.qml中的代码如下:Rectangle { id:detailRect Layout.fillHeight: true Layout.fillW...

2020-06-30 23:27:30 469

原创 四、Qt widget应用、C++、qml混合编程之三

关键词:ChartView,ValueAxis,ScatterSeries1、建立一个中间层DataSource类,更新qml图表的数据在这个类中完成,主要代码如下:void DataSource::updateD(QAbstractSeries *series,QPointF pointHA){ qDebug()<<"series name,A "<<series->name()<<pointHA.y(); m_paradata.appe...

2020-06-30 14:56:26 290

原创 三、实现局部放大动画效果的实例

关键词:MouseArea,transitions,ParallelAnimation,NumberAnimation在mail.qml中添加如下代码:Rectangle { width: 400 height: 400 Rectangle { id: coloredRect width: 100 height: 100 anchors.centerIn: parent...

2020-06-30 14:53:50 389

原创 二、Qt widget应用、C++、qml混合编程之二

在上一篇文章的源码基础上,增加如下代码,完成如何调用QML中的方法1、关键字:C+、 Qt widget、qml、menu 、invokeMethod2、在 mainwindow的UI设计,在memu中输入"操作”,回车后在子菜单中输入“切换图片3、在 Action Editor窗可以看到多了切换图片" Action,右键点击这个Action,点击“转到槽",选择triggered(),并确定,可以看到在 mainwindow. cpp中增加了on_action_triggered()方法;4

2020-06-30 14:48:47 259

原创 一、Qt widget应用、C++、qml混合编程之一

1、关键字:Qt widget、qml、image2、首先我们创建一个Qt widgets application,给它工程名称CallQml,然后一路下一步创建完成;3、在CallQml.pro中添加 QT += qml quick QT += quickwidgets4、双击mainwindow.ui,在设计窗口中随意添加一个控件,我们添加一个button吧,然后在窗口上点击右键,选择布局,选择栅格布局,可以看到这个控件就最大化了,这时候窗口中的任何控件都可以随着窗口最大化、最小化...

2020-06-30 14:27:36 809

用于测试的产生大数据量的程序

C#编写的用于性能测试的程序,产生大量数据的文件,然后可以把数据文件load到oracle数据库中

2007-06-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除