Qt
文章平均质量分 80
Inkred
这个作者很懒,什么都没留下…
展开
-
QT中窗体设置了 this->setWindowFlags(Qt::WindowDoesNotAcceptFocus | Qt::FramelessWindowHint | Qt::ToolTip);
QT中窗体设置了 this->setWindowFlags(Qt::WindowDoesNotAcceptFocus | Qt::FramelessWindowHint | Qt::ToolTip);类型后,受Qt::ToolTip的影响会一种置顶,并浮在其他软件能上面的解决办法在show()这个窗体之前增加//设置了toolTip(要不然画不了圆角), 防止提示窗体任何时候都霸屏置顶::SetWindowPos(HWND(this>winId()), HWND_TOPMOST, 0,原创 2020-12-03 10:18:24 · 1747 阅读 · 0 评论 -
写一个管理Svg图片的灰度处理类
//还没想好怎么写,先把声明写了,想好再加上去#pragma once#include <QtCore/qglobal.h>#include <QPainter>#include <QSvgRenderer>#include <QIcon>#include <QPixmap>class ManagermentSvgRenderer{public: ManagermentSvgRenderer(); Manage...原创 2020-10-28 21:01:42 · 409 阅读 · 0 评论 -
拖动窗体改变大小时,tableView跟随者窗体改变大小,重写resizeEvent(QResizeEvent *event)事件
void 类型::resizeEvent(QResizeEvent *event){ if (m_pErrorView) { int width = m_pTableView->width(); int scrollWidth = m_pTableView->verticalScrollBar()->sizeHint().width(); m_pTableView->setColumnWidth(0, width...原创 2020-10-28 13:25:04 · 1379 阅读 · 0 评论 -
继承Qcombox,重写下拉显示窗体,根据下拉treeview的数据项改变下拉窗体的大小
class MyComboBox :public QComboBox{public: MyComboBox(QWidget *pParent = nullptr); ~MyComboBox(); protected: void showPopup(); //重写下拉显窗体,设置显示项的大小private: void resizeContent(); int MaxContentSize(); int getMaxContentSize(T...原创 2020-10-27 16:42:51 · 480 阅读 · 0 评论 -
Qt TableVIew上右键弹出菜单理解和demo思路
class FilterFrame : public QWidget{ Q_OBJECTpublic: FilterFrame(QWidget *pParent = nullptr); ~FilterFrame();protected: void initUI(); void slotsConnect(); void setAction(QAction *pAction); void initContextMenu(); protec...原创 2020-10-20 13:19:26 · 502 阅读 · 0 评论 -
Qt 对 json字串的解析
这是json串[ { "ServerIP": "P1:10.2.41.20:10.2.41.20:001" }, { "ServerIP": "pc01:10.2.41.82:10.2.41.82:001" }, { "ServerIP": "q-P1:10.2.41.88:10.2.41.88:111" }, { "ServerIP": "e-pc01:10.2.41.105:10....原创 2020-10-19 17:18:01 · 493 阅读 · 0 评论 -
QItemDelegate定制TableView中每一列属于不同类型的控件
#include "QItemDelegate"#include <QLineEdit>#include <QPlainTextEdit>// TableView.ItemDelegate选项enum EditStyle{ None, // 不能编辑 Simple, // 默认编辑框 PlainEdit, // 多行编辑框 LineEdit, // 单...原创 2020-09-30 12:43:30 · 363 阅读 · 0 评论 -
qt使用QTreeWidget实现一个树结构显示数据
#pragma once#include <QTreeWidget>#include <QVBoxLayout>#include <QStatusBar>#include <QList>class TreeView :public QTreeWidget{public: TreeView(QWidget *pParent = nullptr) :QTreeWidget(pParent) {} ~TreeView() {};...原创 2020-09-29 17:56:20 · 2370 阅读 · 0 评论 -
Qt如何给一个button,悬浮 、按下设置不同的背景图
QPushButton *pButton= new QPushButton();QString styleSheet = QString("QPushButton{background:url(%1); background-color:transparent;border: none; }" //正常 "QPushButton:hover{background:url(%2); background-color:transparent; }" //滑过 "QPushB...原创 2020-09-28 08:46:16 · 1680 阅读 · 0 评论 -
Qt实现定制化的输入框,如输入IP地址的小控件
1.定制自己的Ip QLineEdit控件类2.将定制的QLineEdit布局在QFrame上最后效果是这样子的#pragma once#include <QFrame>#include <QString>#include <QLabel>#include <QLineEdit>class IpPartLineEdit : public QLineEdit{ Q_OBJECTpublic: IpPartLine...原创 2020-09-26 09:22:14 · 1124 阅读 · 0 评论 -
QLineEdit实现定制化的QLineEdit,QLineEdit中间可输入文本,两边加入图标点缀的实现思路
QLineEdit实现定制化的QLineEdit,QLineEdit中间可输入文本,两边加入图标点缀的实现思路,继承QlineEdit,定制属于自己的QLineEdit,方便入门级理解,直接上实现代码//.h#pragma once#include <QLineEdit>#include <QPushButton>#include <QHBoxLayout>#include <QLabel>class specialLineEdit : p.原创 2020-09-26 08:26:34 · 1093 阅读 · 0 评论 -
Qt如何往ini文件里读写数据
如何往ini文件里读写数据static const wchar_t *c_strName = L"Login";static QString cofigFilePath ="xx/xxx" //ini文件路径比如ini里的结构是这样子的[Login]ComputerName=HostName=HostIP=node就是ComputerName、HostName、HostIP等//读取ini里的信息QString readConfigNode(const wchar_t ...原创 2020-09-25 16:31:49 · 478 阅读 · 0 评论 -
Qt中如何给窗体绘制阴影,重写绘图事件
给窗体绘制阴影 void paintEvent(QPaintEvent *event) { //绘制阴影 QPainterPath path; path.setFillRule(Qt::WindingFill); path.addRect(10 10 this->width() - 10* 2, this->height() - 10* 2); QPainter painter(this); ...原创 2020-09-25 15:26:54 · 848 阅读 · 0 评论 -
选中窗体Qt事件处理窗体跟着鼠标移动
Qt事件处理窗体跟着鼠标选中窗体时跟着鼠标移动class MoveFrme :public QDialog{public: MoveFrme(Qwidget *pParent =null):QDialog(pParent){}; ~MoveFrme(){};protected: void mousePressEvent(QMouseEvent *); void mouseMoveEvent(QMouseEvent *); void mouseReleaseE...原创 2020-09-25 12:14:52 · 676 阅读 · 0 评论 -
一个函数未执行完时就马上执行另一个出现崩溃,使用QTimer::singleShot阻塞一下,再执行另一个函数
一个线程或者函数或者进度条未执行完时就马上执行另一个出现崩溃,使用QTimer::singleShot阻塞一下,再执行另一个函数,QTimer::singleShot(10, [&]{ ;//写想要执行的函数});原创 2020-09-24 19:44:40 · 1123 阅读 · 0 评论 -
Qt如何写一个三秒自动消失提示窗,适用于窗体和tableView中
#include <QDateTime>#include "QTimer"#include "QAbstractItemModel"class QVBoxLayout;class GlodonTableView;class QModelIndex;class QLabel;class QPropertyAnimation;class ToolTipParam{public: ToolTipParam() : m_sizeMinTip(80, 60)...原创 2020-09-23 13:18:46 · 1674 阅读 · 0 评论 -
如何使用QStackedWidget实现两个页面的翻转
这里提供一种实现思路/*** @brief The RotatingStackedWidget class 反转的stacked*/class RotatingStackedWidget : public QStackedWidget{ Q_OBJECT Q_PROPERTY( float rotateVal READ rotateVal WRITE setRotateVal) // TSC_IGNOREpublic: explicit RotatingSt...原创 2020-09-21 13:20:49 · 646 阅读 · 0 评论 -
delegate绘图事件绘制图片
virtual void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const;{ QPixmap *pGreen = new QPixmap("图片路径"); const QPixmap & star = *m_pGray; int nWidth = star.width(); int nHeight = star.h...原创 2020-09-18 19:10:59 · 199 阅读 · 0 评论 -
窗体的鼠标事移动无法实时获取Qcombox的区域解决办法
在窗体上鼠标事件无法实施获取鼠标是否在Qcombox的区域上,继承Qcombox使用事件过滤器解决该问题classNewComboBox;class myFrame: public QDialog{ Q_OBJECT public: myFrame(QWidget* parent=null); ~myFrame(){}; protected: void mouseMoveEvent(QMouseEvent *event);...原创 2020-09-17 13:28:28 · 362 阅读 · 0 评论 -
Qt 线程实现登录动图,以免被认为是卡死的实现思路
这里介绍,如登录时还未正式登录上之前,以动图的形式先呈现,防止出现卡顿,以为是卡死,用动图的形式表示正在登录中以两个线程 和一个窗体为例,做思路引导//线程1,线程1里的登录完成在run()函数中实现,登录结束以后,发送登录完成信号,Frame*m_pFrame;为窗体可输入登录所需的ip 密码 用户名等classLoginThread:publicQThread{Q_OBJECTpublic:LoginThread(Frame*pFrame);si...原创 2020-09-14 20:04:32 · 237 阅读 · 0 评论 -
QCombox实现下拉树结构,QTreeView Model 数据层设置及实现代码
Qcombox拉下一树形结构显示,这里提供具体的实现逻辑,分别由 窗体、数据层管理结构设计、QAbstractItemModel,每一个节点的数据信息,实现代码第一、每一个节点的数据结构形式#pragma once#include <QComboBox>#include <QFrame>#include <Qlist>#include <QTreeView>#include <QDialog>class TreeViewDat原创 2020-09-13 14:29:29 · 2626 阅读 · 5 评论