- 博客(160)
- 资源 (29)
- 问答 (6)
- 收藏
- 关注
原创 qquick paint ed item
qquickpainteditem可以用于C++和qml 可以用于绘制,在c++中调用paint的方法进行绘制,然后通过c+和qml混合编程,在qml中进行调用
2021-06-15 23:17:15
465
2
原创 多线程
线程同步可以通过unique_lock来控制,效果因该比使用mutex的lock和unlock好一些,unique_lock和lock_guard会自动释放锁资源,线程同步加锁统一比较简单,没有额外的代码,重要的是控制锁的大小,如果过大可能会影响程序的执行效率,容易出现问题,所以锁的大小适当就好,可以通过加一个大括号来控制锁的什么周期,以便及时释放锁资源,只需要在适当的时候加上锁就好了,代码如下: { std::unique_lock<st...
2021-04-06 10:48:10
253
原创 c++11 多线程 生产者 消费者
std::queue<int> g_que; // 产品列表std::mutex g_mu;// 以厂家角度为中心,2个条件变量,一个判断是否可以卖产品,一个判断是否可以生产产品std::condition_variable g_canSell; // 有产品,可以卖std::condition_variable g_canProduct; // 可以生产产品const int g_maxSize = 10; // 最大产品数目// 生产产品void producer() .
2021-02-10 17:34:53
356
原创 qml 命名规范
qml命名规范可以参照python的命名规范,变量和函数等对象的命名规范使用的是这样的方式:共有数据成员,属性和函数等使用的是前面没有下划线的方式命名的,比如:property int var1function func1() {}表示可以被外部对象调用和使用保护数据成员,属性和函数等使用前面带一个下划线的方式,比如:property int _var2function _func2() {}表示可以被有继承关系的qml源文件使用私有数据成员,属性和函数等使用前面带有2个下划线的方式,比
2021-02-08 10:41:55
395
1
原创 框架架构设计思想
可以采用类似与MVC的类似的方式,model变化,View会自动变化,还有总线架构细想,还有就是数据变化,它的属性视图会自动变化还有状态机的架构思想也是不错的,他们有一个共同的特点就是有类似与自动化的功能,...
2021-01-28 15:11:22
251
原创 qml quick 注意事项
如果qml或者c++文件1.包含有qmldir文件,2.并且该qmldir文件带有module metadata,3.并且该qmldir文件被安装到qml import path,则在文件系统中的任何一个qml文件能够import url语句将该model引入,从而使用module里面的对象类型和javascript资源...
2021-01-27 17:13:58
130
原创 桌面悬浮窗口 鼠标移动弹出窗口功能
qml桌面悬浮窗口 鼠标移动弹出窗口功能,实现方式可以考虑使用mouseEnter,mouseExit的方式,其他方式比如判断鼠标位置也是可以考虑使用的,都可以尝试一下
2021-01-18 09:45:22
1028
原创 qml 坐标映射
onPositionChanged: { if (isLeftPressed) { console.log("aaaaaaaaaaaaaaaaaaaaaaaaaaa:", mouse.x, ":", mouse.y , rootWindow.x, ":", rootWindow.y, ":", mapToGlobal(mouseX,mouseY)) ...
2021-01-14 17:38:46
987
原创 qml null undefined
qml null 会等于(==) 空对象(null)也会等于unfinedqml qml 恒等于(===) 空对象 不等于undefined如果需要用(===)实现(==)判断null的功能可以使用这样的方式if (object === null || object === undefined) {}
2021-01-12 17:30:19
2628
原创 qml 窗口半透明
qml 窗口半透明有这2中办法,第一种是设置opacity,在某种情况下可能会达不到期望值,因为设置了之后它的子控件也会受到影响,第二种办法就是通过color进行设置,比如color:"#AA000000",这样设置了之后它的透明度只会影响自己,不会影响子控件,可以根据实际情况看使用哪种opacity : realThis property holds the opacity of the item. Opacity is specified as a number betwe
2021-01-06 16:06:27
1107
原创 qml ListView 语法
import QtQuick 2.15import QtQuick.Window 2.15import QtQuick 2.2import QtQuick.Controls 1.2import QtQuick.Layouts 1.1Window { width: 640 height: 480 visible: true title: qsTr("Hello World") Rectangle { width: 360; .
2021-01-06 11:23:16
202
原创 使用Qt开发应用程序时,使用MySQL数据库还是使用Qt自带的SQLite数据库呢,用哪个会方便简单
使用Qt开发应用程序时,使用MySQL数据库还是使用Qt自带的SQLite数据库呢,用哪个会方便简单?请教大家,使用Qt开发应用程序时,使用MySQL数据库还是使用Qt自带的SQLite数据库呢,用哪个会方便简单? 主要是便于上手;出现 bug的几率 …显示全部拿人钱财替人消灾,人生江湖如此,程序江湖亦如此!11 人赞同了该回答Qt的数据库模块已经把数据库的操作全部封装了一遍,非常好,你不必关心细节,无论是sqlite还是mysql,代码都是一模一样的,所以不必关心,你应该关心..
2021-01-03 16:05:59
948
原创 c++ qt orm编程
有哪些值得推荐的 C++ ORM?为什么c++下的orm框架很少,至少很多win32原生应用都有数据库访问需要,求推荐一个靠谱的选项开发环境是win+qt+sqliteORM有一个问题是,当你的需求从简单变成不太简单的时候,会因为ORM无法支持多出来的那部分,导致原有的东西也不能用ORM,然后整个数据层就要重写了。譬如说,分库分表啊、update if exists啊……小项目用orm没问题,但是一个未来会变大的小项目用orm就是个问题了。所以我的建议是,除非你有确凿的证据认为,
2021-01-03 14:43:12
667
原创 qt mvc 自定义model修改数据方式
qt mvc 自定义model修改数据方式,目前想到的大概这几种办法当然还有官方的voidbeginInsertColumns(const QModelIndex &parent, int first, int last)voidbeginInsertRows(const QModelIndex &parent, int first, int last)boolbeginMoveColumns(const QModelIndex &sourceParent, int so
2021-01-01 17:38:57
1375
原创 Qt 官方介绍
可以多看一些Qt官方的文档,又一些不错的东西,例如下面的一篇文档介绍:https://www.qt.io/blog/qlist-changes-in-qt-6
2020-12-30 19:54:35
167
原创 qt qml路径设置
路径设置可以使用相对路径,比如”../../../file“,但是在发布版本的时候这样写可能会用问题,所以最好是使用qt自带的应用程序路径为基准来找需要的文件数据,访问资源文件最好是不要使用相对路径"../.."的形式,可以使用"qrc:/的形式"...
2020-12-28 11:37:52
848
原创 qt qml 焦点
如何改变窗口的焦点,qt,qml 应该都没有改变焦点的控制系统焦点的函数,因为这个是受系统控制的,如果需要控制系统的焦点,可以通过qt获取焦点的一些函数进行逻辑控制,比如通过控制show,hide等函数...
2020-12-28 10:35:26
1141
原创 qml show hide函数使用的注意事项
在使用qml的show hide的时候,可能会有点问题,在几个场景应用qml的show,hide函数控制窗口的显示和隐藏,有时候会达不到期望的结果,会影响qml的一下消息回调,而导致qml的一些事件调用不到,或者出现非期望的的结果,目前原因不明,所以如果用qml的show,hide有问题,可以换种办法实现窗口的显示隐藏功能,比如用setWidth,setHeight,setVisible,setOpacity等函数代替...
2020-12-28 10:10:35
840
原创 Qt/C++和QML获取屏幕大小方法
Qt/C++和QML获取屏幕大小方法在桌面应用程序的开发过程中,获取屏幕(桌面)的大小来定位桌面应用所显示的位置,是桌面开发中经常用到的手段,在Qt开发和QML开发中也不例外,本篇着重介绍Qt获取桌面屏幕大小的两种方法,以及对应的QML中获取桌面屏幕大小的两种方法。首先上图,说明一下屏幕桌面的区域划分:如图:一、Qt/C++获取桌面屏幕大小: (1)、包含头文件 #include <QApplication> #include <QDesktopW...
2020-12-22 14:43:44
5711
1
原创 悬浮框实现
项目 项目1 项目2 项目3计划任务 完成任务创建一个表格一个简单的表格是这么创建的:项目 Value 电脑 $1600 手机 $12 导管 $1 设定内容居中、居左、居右使用:---------:居中使用:----------居左使用----------:居右第一列 第二列 第三列 第一列文本居中 第二列文本居右 第三列文本居左 SmartyPantsSmartyPants将A...
2020-12-20 14:51:45
1016
原创 qt raise lower方法
void QWindow::raise()Raise the window in the windowing system.Requests that the window be raised to appear above other windows.在window系统中Raise这个窗口请求将窗口提升到显示在其他窗口之上。具体细节如下,如果窗口时弹框或者一系列指定窗口中的一个,那么raise的效果会在其他设置为指定窗口之上...
2020-12-18 12:16:23
1250
原创 qml 分析
qt UI设计可以通过Qt Widget和qml实现,Qt Widget可以通过各种办法根据需求实现各种效果,比如可以通过ui设计,qt接口等,甚至可以改底层代码等办法实现各种gui效果,qml也是可以实现各种UI效果的,qml属于更上层的设计ui的一种工具,这就意味这,理解qml运行原理,调用接口使用,加上一些逻辑处理就可以实现需要的UI公共了,但是因为qml是更上层的ui工具(再QWidget等qt ui函数上层),这就意味着很多底层的东西调用不到,qml的功能虽然很多,但是
2020-12-18 10:12:10
250
原创 qml 不规则窗口
在用qml做不规则和半透明窗口的,时候,一般会知道Window {id:windowcolor: "#00000000"flags: Qt.FramelessWindowHintwidth: 800height: 600}设置了无边框和背景透明之后,会发现有一个bug就是透明区域会相应鼠标点击事件,这个一般不是我们希望的,如何才能不让它不想要不必要的鼠标事件呢QRegion QWindow::mask() constReturns the mask set
2020-12-17 14:52:01
933
原创 qml 解析
qml目前对枚举类型的支持性不是很好,如果需要使用qml的枚举类型可能需要用比较多的代码和步骤实现,可能也不一定能达到很好的代码效果,javascript对enum的支持也不是很好,但是可以做出enum类似的效果,有一点局限性,可以根据实际情况使用...
2020-12-16 15:35:09
245
原创 qml javascript 枚举enum
JavaScript中是没有枚举类型的,除了JavaScript以外的语言都有enum这个关键词,但为了在JavaScript中使用枚举变量,我们必须自己创建它。var Fruit = { orange : 1, banana : 2, peach : 3, strawberry : 4};var myvar = Fruit.orange;if (myvar == 1){ console.log("It is an orange!");}else { console.log("I
2020-12-16 10:07:41
476
原创 qt 获取屏幕坐标
QDesktopWidget * desktop = qApp->desktop(); QRect rect = desktop->screenGeometry(this); QRect frameRect = frameGeometry(); if (frameRect.top() == m_RecoverPosition.y() - (curHeight - HIDE_BORDER)) { MoveWindow(pos(), m_RecoverPosition); } ..
2020-12-15 17:51:25
2576
原创 qml 悬浮框右键点击弹出菜单栏
qml 悬浮框右键点击弹出菜单栏首先窗口有主窗口和悬浮窗口大致想了有3种办法:1.在悬浮窗口内部动态加载(Loader)右键菜单(使用系统自带的Menu),这种办法可以实现,但是菜单栏有一个缺陷,加载的菜单项目只能在父窗口内部,对于悬浮框的情况可能会无法到达有效的效果2.第二种办法可以在主窗口中动态(Loader)或者静态加载右键菜单(使用系统自带的Menu)这样时可以实现的,但是对于悬浮框来说,由于他的右键相应在悬浮框,所以菜单应该跟随着悬浮框移动,这样就有一个bug,j就
2020-12-15 10:21:48
1671
原创 qml 窗口拖动
import QtQuick 2.15import QtQuick.Window 2.15// 可移动窗口Window { id: rootWindow visible: true width: 900 height: 600 title: qsTr("Hello World") flags: Qt.FramelessWindowHint | Qt.Dialog | Qt.WindowStaysOnTopHint MouseArea {.
2020-12-14 19:27:28
1057
1
原创 qml 基本数据类型
Qt 5.15Qt QMLQML Basic TypesQt 5.15.1 Reference Documentation ContentsSupported Basic TypesBasic Types Provided By The QML LanguageBasic Types Provided By QML ModulesProperty Change Behavior for Basic TypesQML Basic Types QML supports a number o.
2020-12-14 17:32:36
335
原创 qml note
qml 解析:如果例如Main.qml里面的组件都是系统的,比如Window,Rectangle等,他们的MouseArea可能是共享的,qml解析为C++,可能会把他们放在一个源文件,如果功能复杂一下,MouseArea可能可能会不太好控制,可能会影响到主窗口的事件相应,如果是自定义的组件,qml 解析为c++会解析为2个源文件,这样他们的MouseArea就是各自独立的,不会共享,可以根据具体的需求看用哪一种办法...
2020-12-14 16:17:22
156
原创 qt 一个应用程序有2个主窗口,任务栏只有一个应用程序图标
可以设置为Qt::Tool或者Qt::SubWindow就能实现这种一个应用程序有2个主窗口,任务栏只有一个应用程序图标flags Qt::WindowFlagsThis enum type is used to specify various window-system properties for the widget. They are fairly unusual but necessary in a few cases. Some of these flags depend on whet
2020-12-12 10:10:08
1688
原创 qml tableview 实现Delegate的2种办法
Qt Quick Control 1.4 版本的TableView1.可以使用Qt Table View自带的rowDelegate等实现2.可以使用style:TableViewStyle的方式实现,他们都有rowDelegate等功能,各有各的特色第1种的优点是代码可重用性可能更好一点,style单独用来绘制滚动条,滚动条可以单独做出一个接口方便调用,代码可重用性能可能更好一点缺点是,如果需要支持右键点击事件,Qt Quick Control 1.4版本是不支持的,而且不太能
2020-12-08 10:49:41
2008
1
原创 qml tableview
tableview的排序功能,qt官方示例有,可以參考做,qt官方实例如下:Qt Quick Controls 1 - Table View ExampleQML type registration: #include <QtQml/qqml.h> ... qmlRegisterType<SortFilterProxyModel>("org.qtproject.example", 1, 0, "SortFilterProxyModel"); ...
2020-12-07 21:47:33
962
原创 撒范德薩分66666
// 测试数据 model: ListModel { id: listModel // 初始化数据 ListElement { headerTitle1: "11" headerTitle2: "12" headerTitle3: "13" } ListElement { headerTitle1: "21" ...
2020-12-07 21:38:15
92
原创 的首發式地方555555
// 表头数据 QtQuickCtrl1_4.TableViewColumn { role: "headerTitle1" title: qsTr("Header1") width: 150; } QtQuickCtrl1_4.TableViewColumn { role: "headerTitle2" title: qsTr("Header2") width: 150; ...
2020-12-07 21:37:38
329
原创 沙發舒服的44444
style: Component { TableViewStyle { scrollBarBackground: Rectangle { color: "#F1F1F1" height: 17 width: 17 } corner : Component { ...
2020-12-07 21:36:58
118
原创 撒飛灑發的33333333
itemDelegate: Component { id: adsf Text { id: name text: styleData.value elide: Text.ElideRight wrapMode: Text.NoWrap color: "#404040" verticalAlignment: Text.Alig...
2020-12-07 21:36:14
133
原创 暗室逢燈2222222222
headerDelegate: Component { id: tableDelegate //绘制表头Item边框边缘,可以拖动 Rectangle { id: tableBorder height: 30 color: "#D3D3D3" // 绘制表头Item content Rectangle { ...
2020-12-07 21:35:41
157
原创 阿斯頓發生111111
// 使用CusListModel需要加入QtQml.Models 2.15// 否则Qt Creator解析器可能不能很好的识别import QtQml.Models 2.15import QtQuick 2.15import QtQuick.Controls.Styles 1.4import QtQuick.Controls 1.4 as QtQuickCtrl1_4//import QtQuick.Controls.Styles 1.4import "../Model"import .
2020-12-07 21:34:20
98
testtestnote.cpp
2020-01-01
自定义事件有多重表现形式,
2019-12-11
untitled6.zip
2019-12-05
Dockwidget.zip
2019-11-30
MainWindow.zip
2019-11-30
Qt quick核心编程及代码
2018-01-13
Opengl vs2013环境配置资源
2017-12-05
OpenGL 网格代码
2017-12-04
OpenGL入门教程实例
2017-12-04
AMD的OpenGL ES2.0的模拟器 和《OpenGL ES2.0 Programming guide》里的例子代码
2017-12-01
aspectj需要的包
2017-11-23
Spring — 基于Java类的配置 代码实例
2017-11-22
Spring java注解,元注解和自定义注解
2017-11-22
Qt Quick核心编程
2017-07-12
SourceInsight4破解版
2017-06-30
如何获取设备信息,多谢了
2017-10-24
Duilib xml文件嵌入子xml,并在子xml中在嵌入子xml文件
2017-02-09
请问有没有办法通过adb获得手机桌面有哪些应用程序呀
2016-06-21
如何使用java语言连接上手机,并获得手机上的信息
2016-06-12
如何忽略所有异常,使用c++编程
2016-05-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人