自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (1)
  • 收藏
  • 关注

原创 Qt WindowModal失效的问题

对于设置WindowModal则需要把需要模态展示的窗口设置到窗口树上,即为他设置一个父窗口。但是设置父窗口后发现无法作为一个独立窗口进行展示,因此还额外需要设置一下window的flag为Qt::window。从官方文档可以看出相比于WindowModal而言ApplicationModal的应用范围更大,是对整个应用的模态,而WindowModal只是针对该窗口所在树上的窗口的模态。Qt提供了两种不同的模态模式,分别为Qt::WindowModal与Qt::ApplicationModal。

2023-03-13 19:24:12 846 1

原创 Qt 无边框窗口添加阴影

【代码】Qt 无边框窗口添加阴影。

2023-02-10 09:42:18 541

原创 Fatal Error C1033错误处理

Fatal Error C1033错误处理

2022-12-07 20:30:26 698

原创 QLayout 删除所有元素

QLayout 删除所有元素

2022-12-07 20:20:41 1355 1

原创 Qt stylesheet设置属性后获取width()与height()错误的问题

Qt stylesheet设置属性后获取width()与height()错误的问题

2022-10-09 22:45:33 675

原创 QLabel设置RichText与超链接

QLabel设置RichText与超链接

2022-08-31 22:47:55 688

原创 QListView 的高性能加载方案

QListView 的高性能加载方案

2022-08-04 20:32:31 853

原创 Qt获取MainWindow指针

Qt获取MainWindow指针

2022-07-27 20:10:57 1987

原创 Qt正则表达式获取html中img

Qt正则表达式获取html中img

2022-07-26 19:24:12 240

原创 Qt 禁止界面刷新

Qt 禁止界面刷新

2022-07-20 20:13:11 2146

原创 判断QScrollBar是否停止滑动

判断QScrollBar是否停止滑动

2022-07-19 20:04:00 413 2

原创 QStyledItemDelegate 刷新paint

QStyledItemDelegate 刷新paint

2022-07-13 19:35:52 1379

原创 QListView text动态显示

QListView动态显示文本

2022-07-08 19:19:14 618

原创 QListView实现自定义Item

QListView实现自定义Item

2022-07-06 20:13:22 4044 3

转载 Qt样式表

qt样式表

2022-06-28 17:45:13 89

原创 Qt QLineEdit自动补全

QLineEdit实现自动匹配补全

2022-06-28 17:07:36 587 1

原创 QPushbutton显示Gif

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); ui->pushButton->resize(200,50); movie=new QMovie(":/loading.gif"); layout=new QHBoxLayout(ui->pushButton); l.

2022-04-19 14:52:44 640

原创 TCP粘包

最近在做邮件客户端时对于iamp协议遇到一些问题,当先后获取邮件内容与附件列表是法现邮件内容获取不完整同时在邮件附件列表时获取到了邮件内容的剩余部分,了解到是发生了粘包。这里记录以下:1.TCP粘包的概念 (1)TCP为了提高发送效率,发送方通常会等到收集一定的数据后在发送一包数据,若连续发送的数据都很少,则TCP优化算法会将这些数据合成一包发送出去,这就造成了接收方接受到首尾相连的粘包数据。 (2)TCP接收到数据包时,并不会马上交到应用层进行处理,或者说应用层并...

2021-09-26 11:02:47 290

原创 C++实现Base64编码

不说废话直接上代码std::string smtp::toBase64(string str){ string base64_basic = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; string res; string strTobitRes; for (int i = 0; i < str.length(); ++i) { bitset<8> bit(str[i]);

2021-09-03 14:44:01 309

原创 Flutter listTile点击修改背景颜色(不刷新界面)

通常情况下Flutter对于界面内元素状态的改变需要调用setstate来刷新界面,那有没有办法只修改指定元素的状态,这里提供一种方法,以ListTile为例,创建监听监听ListTile的点击状态,当监听值发生改变调用ValueListenableBuilder来重构该元素,实现点击后该变该元素状态。效果如下:具体代码实现如下: Widget selectFolders() { ValueNotifier<List<bool>> isClicked =.

2021-08-24 11:21:44 3469

原创 Flutter Overlay+Overlay+MouseRegion实现多级菜单

Flutter并没有Qt一样提供菜单栏多级菜单,想要实现该功能就需要自定义,已知点击按钮可以通过Overlay弹出菜单悬浮框,考虑可不可以在ovelay中在嵌入一个Overlay实现多级菜单,实践证明该方法可行,具体实现为先定义两个OverlayEntry作为要显示悬浮窗LayerLinkfixLink=newLayerLink();OverlayEntry?fixOverlay;LayerLinkmoveMailLink=newLayerLink();//移动...

2021-08-17 19:08:13 1679

原创 Flutter 桌面端独立窗口

目前Flutter还不支持在桌面端建立独立窗口,对应窗口跳转还是只能通过路由跳转来实现。虽然不能实现独立窗口,但是可以想办法实现相似的独立窗口效果。下面介绍两种方法,方法一:利用路由跳转时背景透明的方法,即想要实现独立窗口时仍然采用路由跳转的方式,但是可以选择将跳转后界面其他部分背景设为透明的方式实现独立窗口类似效果,如下图所示:该方法跳转后只能操作中间的控件。具体实现见本人另一篇文章:Flutter 路由跳转透明背景https://mp.csdn.net/mp_blog/creatio

2021-08-17 14:37:29 3548

原创 Flutter 与win32 交互

Flutter依赖于传递消息的方式使用特定平台的API:1.应用程序Flutter通过平台通道向宿主发送消息2.宿主监听平台通道并接受消息,之后可以使用平台API,并将响应发送回客户端。注 :消息和响应以异步形式进行传递,以确保用户界面保持响应Flutter定义了三种ChannelBasicMessageChannel:用于传递字符串和半结构化的信息MethodChannel:用于传递方法调用EventChannel:用于数据流的通信这里介绍通过MethodChannel通信

2021-08-16 18:03:00 2040 1

原创 标准邮件协议

1.POP3协议pop3协议为邮局协议版本3,是TCP/IP协议族中的一员,由RFC1939 定义,主要用于支持使用客户端远程管理在服务器上的电子邮件。POP3 使用 TCP 作为传输协议,端口号是110。用户从邮件服务器上接收邮件的典型通信过程如下。1. 用户运行客户端2. 客户端与邮件服务器的110端口建立TCP连接。3. 客户端向服务器端发出各种命令,来请求各种服务。4. 服务端解析用户的命令,做出相应动作并返回给客户端一个响应。5. 3)和4)交替进行,直到接收完所有邮件

2021-08-06 11:58:39 2457

原创 Dart 定时器

最近需要实现一个定时向服务器获取消息更新界面的功能,了解以下dart定时器的用法,记录一下首先导包import 'dart:async';定时器可以实现一次调用与多次调用两种调用一次 var updateSecond = Duration(seconds: 60);Timer(timeout,(){ //一分钟后回调})调用多次Timer? _undateTimer;var updateSecond = Duration(seconds: 60); _u

2021-08-04 19:56:00 2434

原创 webView加载本地图片的问题

最近在使用webview显示邮件内容,但是对于邮件中的内联图片加载总是失败,并不能根据图片的cid加载资源。之后尝试把图片下载到本地之后替换cid的方式加载图片,但是还是失败,网上查了很多办法也不行,这里特别提醒在文件路径前加”file:///“的方法没用,因为看到很多帖子给出了这种方法,但是实测没用。最终解决方法为将cid替换为图片的base64编码即可成功加载图片var res = message.decodeTextHtmlPart(); //邮件解码结果(HTML)var cont...

2021-07-29 19:45:47 714

原创 webview_window中文乱码

在使用webview_window显示HTML时遇到显示中文乱码的问题,原因是vscode的编码方式为UTF-8,而vs的编码方式为gb2312,因此在vscode中传入显示参数,通过channel调用方法显示时因为编码方式的不同导致中文显示乱码,因此想要支持中文显示要对webview_window插件修改,增加编码格式转换的方法。std::string utf8_to_gb2312(const char* utf8) { int len = MultiByteToWideChar(CP_UTF8

2021-07-21 13:38:43 970

原创 Flutter 路由跳转透明背景

Flutter路由跳转时想要只显示跳转页面有内容的部分,剩余部分设置透明显示跳转前的页面。如上图:具体实现Navigator.of(context).push(PageRouteBuilder( //跳转背景透明路由 opaque: false, pageBuilder: (context, animation, secondaryAnimation) { return LoginPage().

2021-07-05 17:42:24 1373 3

原创 Flutter TextField 自动匹配补全

Flutter中TextField本身并不支持自动匹配功能,因此需要我们自定义实现该功能。首先考虑如何在TextField下方一个显示匹配选项的对话框,可以选择overlay实现该功能同时搭配CompositedTransformFollower是悬浮框跟随TextField,具体实现如下: var userName = TextEditingController(); var passWord = TextEditingController(); String inputTip = "

2021-07-01 15:38:32 1545

原创 flutter 键盘监听

flutter中可以通过RawKeyboardListener监听键盘的操作。 Widget liternEnter() { return RawKeyboardListener( autofocus: true, onKey: (event) { if (event.runtimeType == RawKeyDownEvent) { if (event.physicalKey == PhysicalKeyboardKey.enter

2021-06-30 11:26:34 5581

原创 正则表达式

[ABC]: 匹配[...]中所有字符[^ABC] : 匹配除[...]外所有字符[A-Z]: 匹配所有大写字母[\s\S]:匹配所有 \s 匹配所有空白符(空格、换行、制表符..) \S匹配所有非换行符\w:匹配字母数字下划线例:匹配邮箱格式^[A-Za-z0-9]+@([A-Za-z0-9]+\.)+[A-Za-z0-9]+$...

2021-06-29 14:35:53 505

原创 Flutter ValueNotifier监听状态

使用ValueNotifier可以实现状态管理当状态ValueNotifier<bool> isMailListClicked = ValueNotifier(false); ListTile( onTap: () { gloabal.isMailListClicked.value = true;})Expanded( child: ValueListenableBuilder(

2021-06-25 18:55:58 1655 1

原创 Flutter overflow问题

出现原因是控件内容超过了指定的高度或宽度,在添加高度或宽度动态变化的控件时容易出现这种问题,解决办法时刻以在外层添加Expanded控件,如下:Expanded( child: SingleChildScrollView())

2021-06-25 18:50:08 1529

原创 Flutter 桌面自定义显示最大最小关闭按钮

import 'package:flutter/material.dart';import 'package:bitsdojo_window/bitsdojo_window.dart';final buttonColors = WindowButtonColors( iconNormal: Color.fromRGBO(0, 0, 0, 0.6), //常态颜色 mouseOver: Color.fromRGBO(255, 0, 0, 0.6), //鼠标移入颜色 mouse.

2021-06-23 15:54:29 1697 2

原创 Flutter 桌面端改变窗口大小

pub仓库中bitsdojo_window插件提供了响应操作import 'package:flutter/material.dart';import 'package:bitsdojo_window/bitsdojo_window.dart';import 'pages/loginpage.dart';import 'routers/rout.dart';void main() { runApp(MyApp()); doWhenWindowReady(() { final

2021-06-23 15:46:38 4434

原创 Flutter 自定义Lable 增加鼠标移入移出

import 'package:flutter/material.dart';import 'package:flutter/gestures.dart';class MyLable extends StatefulWidget { MyLable({ var key, required this.label, required this.onPressed, this.backgroundcolor, }) : super(key: key); fina.

2021-06-23 15:42:28 895

原创 Flutter ListView 触底加载

import 'package:flutter/material.dart';import 'package:bitsdojo_window/bitsdojo_window.dart';import '../maillist/filterdialog.dart';class MailListSide extends StatefulWidget { MailListSide({var key}) : super(key: key); _MialListState createState(.

2021-06-23 15:38:31 877

c++实现自定义smtp类,实现邮件内容编码与发送

c++编写自定义smtp类可实现发送文本邮件,html,包含附件邮件。

2021-09-01

空空如也

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

TA关注的人

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