草庐IT

2.1Qt基础按钮控件

第二章基础控件2.1按钮控件组2.1.1QAbstractButton类2.1.2QPushButton按钮2.1.3QRadioButton按钮2.1.4checkBox按钮2.1.5commandLinkButton按钮2.1.6buttonBox按钮盒2.1按钮控件组QTCreatorUI设计界面的按钮组截图如下:以下是对按钮组控件的一些功能介绍:PushButton按压按钮:最普通的按钮,按(点击)按钮命令计算机执行一些动作,或者回答问题,比如windows开始菜单里的重启,注销,关机等按钮。ToolButton工具按钮:工具按钮通常是一个集合,一般集成在工具栏里。比如打开,保存,复制

【QT 基础教程 十五】QTreeView类解析

文章目录概要:本期主要介绍Qt中QTableView类的结构和操作实现。一、简介二、操作接口三、源码分享结尾概要:本期主要介绍Qt中QTableView类的结构和操作实现。一、简介头文件:#include模块:QT+=widgets父类:QAbstractItemView功能:Qt中的QTreeView可以将数据项显示在树视图中二、操作接口setEditTriggers:设置单元格是否可编辑、如何操作来编辑。ui->treeView->setEditTriggers(QTreeView::NoEditTriggers); //单元格不能编辑setSelectionBehavior:设置以单

Qt不能在线程函数操作UI

  Qt的官方文档虽然并没有明确说明,不能在子线程中操作UI,但是,因为Qt是事件循环机制,所有的UI事件都是在主线程中处理的,如果在子线程中直接操作UI,就会存在线程安全问题,严重时候会使程序挂掉。  但是有些场景确实需要在子线程中操作UI怎么办?以下是几种常用的解决方案:  1.使用信号槽机制  这种方式是当子线程中需要对ui对象进行操作时,发出一个信号,在与之连接的槽中处理ui操作。信号和槽的连接方式必须是BlockingQueuedConnection或QueuedConnection的连接方式连接。  2.使用自定义event  在子线程中通过QCoreApplication::po

【QT八股文】系列之篇章1 | QT的基础知识及事件/机制

【QT八股文】系列之篇章1|QT的基础知识及事件/机制前言0.基础Qt/PyQt5介绍/关联Qt的优缺点(为什么要用qt来做界面)Qt的核心机制请简要介绍一下Qt中的主窗口(MainWindow)类,它有哪些重要的函数和成员变量?Qt中的常用容器类(偏数据类),并说明它们的特点和使用场景。PyQt5中的常用容器类(偏布局类),并说明它们的特点及使用场景。1.事件/机制QT的事件定义/来源/接收者/传递?信号与事件的区别QT的事件机制是什么?QT事件机过滤器是什么QT事件机过滤器使用的三种方法及注意事项QT的事件循环?QT程序是事件驱动的(如何理解)常见的QT事件类型?QT事件机制有几种级别的事

java - 在qt中从c++调用java方法

我正在尝试使用QAndroidJniObject在c++qt中调用在androidActivity中定义的方法。这是我在C++类中的调用QAndroidJniObjectdata=QAndroidJniObject::callStaticObjectMethod("com/android/app/appActivity","appData","(I)Ljava/lang/String;");QStringdataValue=data.toString();qDebug()这个appData是在appActiviyandroid类中定义的,它返回一个字符串这是我要调用并获取返回字符串值的

android - 通过在 qt 中从 C++ JNI 发送字符串在 Android 中显示 Toast

我正在尝试在C++端的Java方法调用上显示toast我已经设法调用了那个方法,甚至得到了字符串,但是Toast不工作我已经尝试了几乎所有的上下文和所有C++方面JavaVMAttachArgsargs={JNI_VERSION_1_6,NULL,NULL};vm->AttachCurrentThread(&env,&args);activityConstructor=env->GetMethodID(activity,"","()V");jobjectobject=env->NewObject(activity,activityConstructor);toastID=env->Ge

《QT从基础到进阶·十五》用鼠标绘制矩形(QGraphicsView、QPainter、QGraphicsRectItem)

以下是鼠标绘制矩形最全的一种用法,完整源码将会放在最后面。QT版本:5.15.2VS版本:20191、在界面加载一张图片界面的搭建选用QGraphicsView,自定义类GraphicsView继承QGraphicsView,在主程序中点击按钮打开图片,相关代码如下:voidtestString::on_button_clicked(){QStringfileName=QFileDialog::getOpenFileName(this,"open",QStandardPaths::writableLocation(QStandardPaths::PicturesLocation),"image

QT使用SQLite 超详细(增删改查、包括对大量数据快速存储和更新)

QT+SQLite在QT中使用sqlite数据库,有多种使用方法,在这里我只提供几种简单,代码简短的方法,包括一些特殊字符处理。在这里也给大家说明一下,如果你每次要存储的数据量很大,建议使用事务(代码中有体现),万条数据不到一秒吧。用SQlite建立一个简单学生管理数据库数据库中有两个表一个是class和student。class表结构student表结果创建工程我的工程如下:直接上代码(看注释更通透)student.pro文件添加sql模块。QT+=coreguiQT+=sql#添加数据库模块greaterThan(QT_MAJOR_VERSION,4):QT+=widgetsCONFIG+

C++ Qt开发:TableView与TreeView组件联动

Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍TableView与TreeView组件联动的常用方法及灵活运用。本章我们继续实现表格的联动效果,当读者点击TableView或TreeView中的某一行时,我们让其实现自动跟随功能,且当用户修改行中特定数据时也让其动态的跟随改变,首先绘制一个主界面如图,分别放置两个组件框,底部保留两个按钮,按钮1用于该表表格的行列个数,按钮2则用于设置TableView表格表头参数,整个表格我们将其设置为可编辑状态。在函数中我

Qt Designer生成ui文件,如何转py文件,如何运行

下面将逐步介绍ui文件如何转py文件,怎么运行的具体操作步骤ui文件转py文件1.使用QtDesigner生成ui文件,保存到本地2.输入cmd,打开命令行窗口3.进入ui文件的目录下,文件路径使用你本地存放ui文件的位置cd/dui文件路径4.在命令行中输入pyuic5-opy文件名ui文件名pyuic5-odemo.pydemo.ui5.查看ui文件所在的位置,可以发现新增了一个demo.py文件运行py文件运行ui文件转换成的py文件,需要在py文件底部添加窗口运行函数。if__name__=="__main__":importsysapp=QtWidgets.QApplication(