自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

jota

分享学习,热爱生活

  • 博客(78)
  • 资源 (41)
  • 问答 (1)
  • 收藏
  • 关注

原创 QtCreator每次启动新实例打开.pro文件

解决QtCreator每次启动新实例打开.pro文件

2022-07-07 00:04:13 1134 1

原创 实现QTableWidget表头带Checkbox

效果关键逻辑重写表格的水平HeaderView,在表头中加入checkBox组件#ifndef QCHECKBOXHEADERVIEW_H#define QCHECKBOXHEADERVIEW_H#include <QCheckBox>#include <QComboBox>#include <QHeaderView>#include <QMap>class CheckBoxHeaderView : public QHe

2020-11-10 17:38:45 1807

原创 使用SkinH实现MFC换肤 102种皮肤

说明 使用SkinH.dll和*.she后缀的皮肤库进行动态换肤。效果关键逻辑void CSkinDemoDlg::OnCbnSelchangeComboSkinStyle(){ int nIndex = m_combSkin.GetCurSel(); if (nIndex < 0) { return; } string strSkinName = m_vctFiles[nIndex]; std::stri...

2020-08-10 11:30:23 1874

原创 系统服务用CreateProcessAsUser实现创建界面进程

一、需求 有一个带界面的GUI程序需要一直保持运行状态,但是操作系统有时会自动更新重启,虽然已经通过注册表的方式设置为自启动,但是必须登录操纵系统才能启动,所以需要一种不登录也能让该程序运行的实现方法。 又因为这个程序是GUI程序,无法直接注册为系统服务(系统服务可以开机后不登录也在后台运行),所以考虑通过把一个控制台程序注册成系统服务,然后通过这个控制台程序调用GUI程序。下面代码是控制台程序调用GUI程序的关键逻辑。 经测试,在Win10 和 window...

2020-07-17 14:25:32 3306 1

原创 windows 实现UDP广播获取设备

关键逻辑1、获取本机所有IP,把IP的最后一个字段值改为255,去掉重复的IP2、遍历所有IP进行广播代码实现// BroadcastDemo.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <stdio.h> #include <winsock2.h> #include <ws2tcpip.h> #include <ws2def.h>#pragma comment(l

2020-06-18 16:27:17 1029

原创 MFC 用Gdiplus画曲线和直线

一、效果二、关键逻辑 Gdiplus::Pen m_pen; Gdiplus::Pen m_penSolid; REAL dashVals[4] = { 1, // 短划长为2 3, // 间隔为2 1, // 短划长为15 3 }; // 间隔为2 m_pen.SetDashPattern(dashVals, 4); m_penSolid.SetDashStyle(DashStyleDot); CPaintDC dc(this); // 用于绘制的

2020-05-11 09:08:37 789

原创 MFC CComboBox下拉框长度根据内容变化

一、效果二、关键逻辑继承CComboBox,在OnCbnDropdown里实现根据下拉框内容调整下拉框高度void CComboBoxDropEx::OnCbnDropdown(){ // TODO: 在此添加控件通知处理程序代码 CDC* pDC = GetDC(); if (pDC != NULL) { CString strText; CRect rc; GetClientRect(rc); int nMaxWidth = rc.Width(); co

2020-05-11 08:56:45 1808

原创 C# 隐藏和显示鼠标

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using System.Runtime.InteropServices;.

2020-05-09 15:24:11 1064

原创 UTF8和ANSI互转

std::string Utf8ToAnsi(const char* szUtf8){ bool bNeedFreeW = false; int WLength = MultiByteToWideChar(CP_UTF8, 0, szUtf8, -1, NULL, NULL); LPWSTR pszW = NULL; __try { pszW = (LPWSTR)_alloca((WLength + 1) * sizeof(WCHAR)); } __except (EXCEPTION..

2020-05-09 15:07:31 2789 1

原创 解决Qt5编译的程序在凝思磐石Linux操作系统无法输入中文的问题

解决Qt5编译的程序在凝思磐石操作系统无法输入中文的问题参考:https://my.oschina.net/lieefu/blog/505363?p=3#comments关键步骤在参考链接中一、背景Qt5编译的程序在凝思磐石操作系统无法使用谷歌拼音输入法输入中文二、解决思路1.更新cmake到3.2以上,我更新到3.9.22.编译fcitx-qt5(Ubuntu16)...

2020-03-31 13:56:41 2387

原创 Qt5 解决QSlider的valueChanged槽函数中setValue导致一直回调的问题

Qt5 解决QSlider的valueChanged槽函数中setValue导致一直回调的问题问题描述 公司一款基于Qt开发的程序,想实现slider设置亮度失败后恢复之前的位置,设置亮度失败会弹窗提醒,结果出现了频繁点击一直弹窗的问题。用blockSignals、QTimer::singleshot、开线程对slider进行setValue都还是同样问题,翻了stack...

2020-03-26 09:27:02 5260 1

原创 CTreeCtrl 收起某个节点并判断是否已收起

框架:MFC需求:收起某个节点,然后判断改节点是否已收起问题:收起节点后判断节点是否收起无效m_treeDev.Expand(m_hTreeItemLowLevel, TVE_COLLAPSE);UINT nState = m_treeDev.GetItemState(m_hTreeItemLowLevel, TVIF_STATE);bRet = nState & TV...

2019-12-04 16:32:38 212

原创 unsigned char*转string或QString

在使用libevent开发Http服务接收数据的过程中,发现返回的是unsigned char*,默认的编码UTF-8,如果转为正确的内容呢?1. unsigned char*转stringunsigned char* pBuf = evbuffer_pullup(req->input_buffer, -1);vector<unsigned char> vctB...

2019-11-06 09:37:46 4613

原创 调用sqlite3示例

这是以静态链接lib方式实现的调用,dll方式待更新 1.从官网下载源码https://sqlite.org/download.html我下载的是:2.下载后创建.lib静态库项目,把解压后的文件中的3个扔到新建的项目然后可以直接编译,但是会报错。3.修改项目属性,改为:不使用编译头然后再重新编译4.新建项目sqlite_demo,把sqli...

2019-10-15 11:03:27 251

原创 根据进程ID获取进程绝对路径

参考:http://www.bubuko.com/infodetail-1727473.htmlhttps://blog.csdn.net/weixin_33751566/article/details/93942450// 获取进程路径CString CMFCApplication1Dlg::GetProcessPath(DWORD dwProcessID){ CStr...

2019-10-09 16:28:08 1102

原创 基于MFC实现分栏Splitter

1.效果2.主要代码主界面类:// SplitterDemoDlg.h : 头文件//#pragma once#include "FormViewLeft.h"#include "FormViewRight.h"// CSplitterDemoDlg 对话框class CSplitterDemoDlg : public CDialogEx{// 构造pu...

2019-09-19 16:35:42 1105

原创 Qt5 QSplashScreen实现程序启动画面和动画

1.效果2.代码#include "mainwindow.h"#include <QApplication>#include <QLabel>#include <QMovie>#include <QSplashScreen>#include <QThread>int main(int argc, char...

2019-09-18 00:01:38 1666

原创 WIN32 根据进程名称关闭进程

#include <windows.h>#include <Tlhelp32.h>#include <sstream>// 根据进程名称获取进程IDDWORD GetProcessIDByName(const TCHAR* pName){ HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNA...

2019-09-17 16:17:56 873

原创 CMFCTabCtrl 使用示例

继承CMFCTabCtrl实现了一些常用的效果,包括官方未实现的每个Tab的关闭功能

2019-08-29 09:52:53 5495 2

原创 CMFCTabCtrl 设置选项页的高度

1. 添加类CMFCTabCtrlEx,继承CMFCTabCtrl,然后添加如下方法:void CMFCTabCtrlEx::SetTabsHeight(int nHeight){ m_nTabsHeight = nHeight;}2. 调用SetTabsHeight(30);3. 效果参考:MFC之CMFCTabCtrl 控件的一些消息处理...

2019-08-28 17:59:07 1065

原创 QLineEdit 获得焦点后全选文本

void QLineEditEx::focusInEvent(QFocusEvent* event){ QLineEdit::focusInEvent(event); QTimer::singleShot(0, this, &QLineEdit::selectAll);}

2019-07-31 18:01:06 4437 1

原创 QLineEdit实现可显示密码可隐藏密码

一、效果图二、关键逻辑QLineEditPassword.h#ifndef QLINEEDITPASSWORD_H#define QLINEEDITPASSWORD_H#include <QLineEdit>class QLineEditPassword : public QLineEdit{ Q_OBJECTpublic: ...

2019-07-31 15:53:50 4138 5

转载 Ubuntu环境QT出现: cannot find -lGL 解决

sudo apt-getinstalllibgl1-mesa-dev转载来自:https://blog.csdn.net/vjhghjghj/article/details/88987916

2019-07-07 15:26:29 404

原创 Qt5.5 单实例运行程序

一、概述 基于qtsingleapplication 实现的单实例运行,csdn和其他平台都有相关的帖子,但是大部分qtsingleapplication 的版本没有支持Qt5.5,编译的时候各种报错。 在此呈上最新版的qtsingleapplication 的Git下载地址:git://code.qt.io/qt-solutions/qt-solutio...

2019-07-03 23:40:56 1206

原创 Qt实现简单倒计时

1.效果图2.代码结构3.关键类QWaittingDialog.h#ifndef QWAITTINGDIALOG_H#define QWAITTINGDIALOG_H#include <QDialog>#include <QLabel>#include <QThread>#include <QTimer>...

2019-07-01 23:23:18 8292 3

原创 时间戳和时间字符串互转

#include <iostream>#include <string>#include <iomanip>using namespace std;// 时间字符串转时间戳time_t TimeStringToTimestamp(string strTime){ struct tm tmTime; sscanf(strTime.c_...

2019-06-10 16:49:33 3437 3

原创 SQLite 外键约束删除不完整

问题描述:使用SQLite删除具有约束关系的主表数据时,从表的数据没有删除!!!解决方式:打开数据库后,需要执行语句:"PRAGMA foreign_keys = ON;"即:sqlite3_exec(m_pSqlite3, "PRAGMA foreign_keys = ON;", nullptr, nullptr, nullptr);...

2019-05-22 08:56:48 1985

转载 QSlider 点击移动到该位置

转载来自https://blog.csdn.net/what951006/article/details/51507801ui->horizontalSliderBrightness->installEventFilter(this);bool QLedDisplayCommonTabWidget::eventFilter(QObject* watched, QEvent...

2019-05-17 15:13:12 2128 1

原创 QComboBox 设置默认文本为空

当QComboBox添加了许多item之后,显示时会默认选中第一个item,如果我想默认一个都不选中,即显示为空呢?解决方式如下:ui->comboBox->setCurrentIndex(-1);...

2019-05-17 14:19:33 11801 2

转载 QT 多种状态的背景图片, 放在同一张图上, border-image 进行分割,拉伸

https://blog.csdn.net/li235456789/article/details/50435613

2019-05-07 13:51:55 687

原创 Ubuntu Qt 安装雅黑Consolas

字体下载:https://download.csdn.net/download/shaoyiju/11151823教程:https://www.cnblogs.com/jiqing9006/p/9021756.html

2019-04-29 17:57:57 834

原创 Qt mouseMoveEvent不响应

参考:https://blog.csdn.net/weixin_42781353/article/details/822613391. 如果是普通的QWidget,需要在构造函数添加如下内容:setMouseTracking(true);2. 如果是MainWindow ,则需要在构造函数添加如下内容:setMouseTracking(true);ui->...

2019-04-25 16:25:46 4366

转载 QTreeWidget 节点重命名

https://blog.csdn.net/hudfang/article/details/45060941

2019-04-25 08:38:22 2445

原创 QMenu实现圆角效果

void MainWindow::contextMenuEvent(QContextMenuEvent* event){ QMenu menu; // 关键的两行代码 menu.setWindowFlags(Qt::FramelessWindowHint); menu.setAttribute(Qt::WA_TranslucentBackground); ...

2019-04-24 16:07:55 1850 1

原创 QTreeWidget 设置节点选中图标

QTreeWidgetItem* pTreeItem = nullptr; pTreeItem = new QTreeWidgetItem(ui->treeWidget, QStringList(QString("000"))); QIcon icon; icon.addPixmap(QPixmap(":/treeitem_screen_selected....

2019-04-23 10:43:45 7144

转载 隐藏QTabWidget的标签头

转载来自:https://blog.csdn.net/imred/article/details/78828828隐藏tabwidget上的tab标签有如下两种方式。方式一是亲测可以实现的,方式二是在网上看的说可以实现。方式一:ui.tabWidget->findChildren<QTabBar*>().at(0)->hide(); 方式二:注...

2019-04-19 09:20:37 9147

原创 time_t 在英文操作系统获取的当前时间戳不对

问题:time_t在英文操作系统且系统时区为东八区之前的时区,获取的“当前时间戳”比实际当前时间戳少了3600秒代码如下:方式一是有bug的方法方式二是正常的方法// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <string>#include <iost...

2019-04-07 17:58:43 1775

原创 VS2017开发基于Boost的Linux项目编译报错:对‘boost::system::system_category()’未定义的引用

问题:1&gt;C:\Users\Administrator\Desktop\LinuxCmdDemo\LinuxBoostTcpClient\obj\x64\Debug\main.o:在函数‘boost : error : system::error_code::error_code()’中:1&gt;/usr/local/include/boost/system/error_code.h...

2019-02-14 13:51:07 5365

原创 获取当前系统登录用户名(包括以管理员权限启动也能获取到)

当程序以管理员权限启动后,如果需要获取当前系统登录非管理员用户名,大部分方法(如 GetUserName)获取到的都是管理员的用户名,以下是获取当前登录用户方法。直接上代码:#include &lt;windows.h&gt;#include &lt;WtsApi32.h&gt;#pragma comment(lib, "WtsApi32.lib")#include &lt;str...

2019-01-24 14:56:03 11203 1

转载 EnumChildWindows枚举所有子窗口缺漏的问题

EnumChildProc callback functionAn application-defined callback function used with the EnumChildWindows function. It receives the child window handles. The WNDENUMPROC type defines a pointer to this ...

2019-01-10 14:03:26 1223

SkinDemo.zip

使用SkinH实现MFC动态换肤,共102种皮肤 .

2020-08-10

WaitingDemoV1.1.zip

基于Qt5实现的调用耗时接口时仍能显示等待动画的解决方案。简单地说就是调用耗时SDK接口本来会导致主线程堵塞,无法显示转圈圈的等待动画,这个demo解决了这个问题。

2019-09-09

CMFCTabCtrlDemo.zip

一个使用CMFCTabCtrl 的例子,实现了独立关闭按钮关闭Tab,并支持右键菜单关闭Tab

2019-08-29

PasswordDemo.zip

实现在编辑框里加一个小眼睛按钮,可显示密码和隐藏密码

2019-07-31

SingleAppDemo.zip

支持Qt5.5的单实例运行demo .

2019-07-03

qtsingleapplication.zip

qtsingleapplication支持Qt5.5

2019-07-03

QWaittingDialog.zip

基于QLabel实现的倒计时窗口类,使用了透明度为1的窗口,窗口以非模态方式弹出,不卡主线程

2019-07-01

仿百度汉字拼音搜索

支持中文、英文、全拼、简拼(拼音首字母)符号搜索,禁用特殊符号为星号*,汉字转拼音采用“拼音-汉字”数据字典的方式实现,支持精确搜索,比如输入“hao”不会匹配到拼音为“shao”的汉字。刚开始根据数据源生成匹配字段时会耗时6秒左右(200条古诗句)。欢迎指正~

2018-11-08

C++中文汉字转拼音

C++,采用“拼音-中文”的数据字典的方式实现中文汉字转拼音,兼容多音字,字典为txt,后期可拓展易维护。在STL的map中查找效率16毫秒左右。

2018-11-07

MFC嵌入CEF谷歌浏览器项目源码

基于VS2010内嵌了CEF谷歌浏览器内核的MFC客户端,用的是CEF1版本。

2018-08-27

MFC嵌入CEF谷歌浏览器客户端项目源码

这是基于VS2010开发的MFC内嵌了CEF谷歌浏览器内核实现的客户端,所用的CEF是CEF1

2018-08-13

C++发送邮件客户端源码

这是一个由老外写的比较新的发送邮件的项目CSmtp,使用VS2008编译,经测试,常用的163、QQ、126、sohu、outlook都支持,唯独163发送到QQ会失败

2018-08-13

串口TCP测试工具(.exe)

这是一个支持串口和TCP连接的指令测试工具(非源码),当然想发送别的内容可以自己编辑发送,源码请看 https://download.csdn.net/download/shaoyiju/10529680

2018-07-09

SingletonTest.zip

SingletonTest.zip里面是实现单例模式几种方式的源码,包括饿汉单例模式、懒汉模单例式、双检测单例模式等

2018-04-09

Radmin多人远程工具

Radmin多人远程工具 Radmin多人远程工具 Radmin多人远程工具

2017-10-28

简单读写锁实例代码

简单读写锁实例代码

2016-11-21

MFC的CheckBox自绘类

一个MFC实现的CheckBox自绘类,支持动态加载PNG图标

2016-07-15

自绘/重绘MFC右键菜单CMenu

自绘/重绘MFC右键菜单CMenu

2016-07-14

导出数据到Excel表

里面有aspose.cells.dll动态库和代码示例

2016-01-10

Aspose.Cells.dll

这是一个用于把数据导出到Excel表的动态库,用这个动态库进行导出则不要求本地安装Office才可以进行导出

2016-01-10

VerifyCodeDemo.zip

MFC实现的一个验证码demo,验证码为4个数字,不可复制,字体、大小、位置随机变化

2022-01-18

AudioCtrl.zip

1、实现对系统所有音频设备的音量控制,音频设备包括扬声器、麦克风 2、实现静音和取消静音 3、支持实时同步音频设备的音量

2021-07-22

QCheckBoxTableWidget.zip

实现QTableWidget表头带复选框Checkbox,可自行拓展,每行的第一列如果想加入checkbox请在表格类对象中setCellWidget

2020-11-10

包含nsWindows.nsh的NSIS.zip

包含 nsWindows.nsh 的NSIS_2.46,最新的为3.04版 .

2020-10-27

DrawArc.zip

基于MFC中的GdiPlus实现画曲线和直线 .

2020-05-11

ComboBoxDropDemo.zip

用继承的方式实现comboBox的下拉框长度根据item数量自适应 .

2020-05-11

CMFCTabCtrlDemo.zip

一个使用CMFCTabCtrl 的例子,支持统一关闭按钮或独立关闭按钮关闭Tab,并支持右键菜单关闭Tab

2020-05-09

HideCursor.zip

基于C#实现的隐藏鼠标和显示鼠标功能 基于C#实现的隐藏鼠标和显示鼠标功能 基于C#实现的隐藏鼠标和显示鼠标功能

2020-05-09

TDK0302智能温湿度控制器使用说明书.pdf

TDK0302智能温湿度控制器使用说明书

2020-04-18

libfcitxplatforminputcontextplugin.so

libfcitxplatforminputcontextplugin.so在Ubuntu16编译的,在国产Linux凝思磐石操作系统测试可行

2020-03-31

cmake-3.9.2.tar.gz

cmake-3.9.2.tar.gz

2020-03-31

bandicam 2019-12-31 17-06-17-527.mp4

这是一个基于VLC搭建RTSP服务器的视频,比较简单,没有测试并发量,基本能满足使用 .

2019-12-31

UProcess.zip

基于VS2017实现的一个跨平台的进程控制库,包括启动进程、获取进程状态、杀进程 ~~~~~~~~~~~~~~~~~~~~~ 不好意思,里面文件.vs没删所以导致这么大,能接受的就下载吧

2019-11-22

LogTest.zip

基于Qt5调用log4qt的实例 .

2019-11-21

AseDemo.zip

用Qt写的基于openssl的AES加密解密 .

2019-11-20

sqlite_demo.zip

基于sqlite3.30.1实现的调用sqlite3的lib静态库的demo

2019-10-15

GetProcessorPath.zip

根据进程ID获取进程路径,兼容32位和64位程序,支持win7和win10系统

2019-10-09

SplitterDemo.zip

基于MFC实现的左右分栏效果,可作为普通主界面框架使用

2019-09-19

StartupPro.zip

Qt5 QSplashScreen实现程序启动画面和动画(注意:UI线程不能堵塞)

2019-09-18

KillProcessDemo.zip

使用windows的API实现根据进程名称杀进程 使用windows的API实现根据进程名称杀进程

2019-09-17

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

TA关注的人

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