甄文超

TNT 数字生活

All Posts


WPF Prism框架介绍

WPF Prism框架介绍 一、什么是PrismPrism是一个用于在 WPF、Xamarin Form、Uno 平台和 WinUI 中构建松散耦合、可维护和可测试的 XAML 应用程序框架。 二、官方地址 https://github.com/PrismLibrary/Prism 基于Prism的VisualStudio扩展包模板: Prism Template Pack,下载它后可以快速创建基于Prism的项目。 三、Prism框架内容 框架中包括 MVVM、依赖注入、Command、Message Event、导航、弹窗等功能。 四、Prism知识章节 Region(区域管理) Module(模块) View Injection(视图注入) ViewModelLocationProvider(视图模型定位) Command(绑定相关) Eevent Aggregator (事件 …

.NET wpf

Qt 编译错误

1、error: ‘ui_mainwindow.h‘ file not found(ui头文件未创建) 问题:在刚好创建的Qt Designer Form Class类中,发现类的.cpp文件中有ui头文件未找到原因:.ui文件没有被识别到,或者.ui文件不存在,导致ui头文件未创建而报错。解决:若修改了.ui文件,随手ctrl+s保存一下,不行再将工程重新构建或重启Qt,就会生成ui头文件, …

QT

QT生成与解析JSON数据,包含JSON数组

简述 Qt5 中包含了处理 JSON 的类,均以 QJson 开头(例如:QJsonDocument、QJsonArray、QJsonObject),在 QtCore 模块中,不需要额外引入其它模块。 常用的 JSON 库 json.org 中介绍了 JSON 在各种语言中的应用,在 C/C++ 中比较常用的JSON 库主要有以下几个: JsonCpp JsonCpp 是一个 C++ 用来处理 JSON 数据的开发包。 网址:http://jsoncpp.sourceforge.net/ cJSON cJSON 是一个超轻巧,携带方便,单文件,简单的可以作为 ANSI-C 标准的 JSON 解析器。 网址:http://sourceforge.net/projects/cjson/ QJson QJson 是一个基于 Qt 的开发包用来将 JSON 数据解析成 …

QT

Qt 资源文件 qrc

前言 当Qt工程打包好发给他人使用时可能会出现一些图片不显示或者一张图片都加载不出来情况,那么可能就是他人的电脑没有这些图片资源,或者源程序加载图片的方法采用的是绝对路径的写法,与他人电脑上面图片的绝对路径不一致导致加载不出来。 通过Qt添加资源文件的方法就可以解决这个问题,而且项目打包发给别人的时候不需要把图片也一起打包,可以节省很多空间。本文就是介绍Qt如何添加资源文件并使用。 添加资源文件 右键工程文件夹——>点击添加新文件 依次选择Qt——>Qt Resource File——>choose 给资源起个名字,点击下一步,然后点击完成。 先选择添加前缀,然后把前缀改成自己需要的,或者直接用 / …

QT

QLineEdit 编辑框左侧添加小图标

方法 使用action的方法添加图标 //一、新建action QAction* userAction = new QAction(ui-nameEdit); QAction* passwordAction = new QAction(ui-numEdit); //二、给action添加icon userAction-setIcon(QIcon(":/password.png")); passwordAction-setIcon(QIcon(":/num.png")); //三、给空间添加action ui-nameEdit-addAction(userAction,QLineEdit::LeadingPosition); ui-numEdit-addAction(passwordAction, …

QT

六大复盘方法及应用实例

无论是对于企业还是个人来说,复盘都是一个能让我们快速成长的方法,尤其是项目经理和PMO,你是带领项目团队的,每一次项目的完成,都有很多经验,俗话说,最大的浪费是经验的浪费! 复盘,才有机会翻盘。反思,才有机会反转。 复盘的作用在于快速找到问题,总结经验的同时,找到工作的突破点,发现可以完善的方向。 复盘的意义:对结果进行核对,并不断回顾、反思、研究自己的行为,从中找出规律,指导自己每天进步。复盘的步骤可以分为:记录分析、反思原因、探究提升。 总结和复盘的区别: 总结主要分析成功或失败的原因; 复盘不仅可以分析成功失败的原因,还能够通过假设的推演,找到不同的方法和可能性。 一、KPT复盘法 K (Keep):  保持对项目团队的及时沟通和协作,以及有效地分配任务和提高效率的方法需要继续保持。在这次项目中成功运用的技术和工具也需要保持并继续完善和应用。 P (Problem): 在项目 …

project manage team manage

qt 移动窗体

一般情况下,当去掉窗体标题栏时,按住鼠标左键就无法实现拖动窗体;当去掉窗体标题栏时,窗体四周的边框也去掉了,此时按住鼠标左键拖动窗体四周边沿,无法实现鼠标拖动改变窗体大小。如下为Qt实现去掉窗体标题栏的代码: setWindowFlag(Qt::FramelessWindowHint); // 去掉标题栏 现在的问题是:   在去掉窗体标题栏的情况下,如何在窗体上按住鼠标左键,实现移动窗体? 2.实现方法 Qt中有个QSizeGrip类,可以很好解决1节提到的问题,关于该类的具体用法,参见Qt Assistant。   代码:   private: //virtual void mousePressEvent(QMouseEvent *e) override; void mouseReleaseEvent(QMouseEvent *e) override; …

QT

Qt QlineEdit

概述:QLineEdit 类代表编程框,它可以让用户输入一个单行文本。类似于登录窗口中的账号和密码的输入框(行编辑)1,构造函数: QLineEdit (QWidget *parent = 0); QLineEdit(const QString &contents, QWidget *parent = 0); 其中 contents 表示编辑框中显示的内容。2,属性(1)alignment 属性表示显示文本的对齐方式,相关成员函数如下: int maxLength() const; // 获取最大输入长度 void setMaxLength(Qt::Alignment flag) const; // 设置对齐方式 void setMaxLength(int len); // 设置最大输入长度 它的含义与 QLabel 类的 alignment 属性相同。maxLength 属性表 …

QT

Qt Qlabel

概述:QLabel是QT界面中的标签类,它从QFrame下继承,QLabel 类代表标签,它是一个用于显示文本或图像的窗口部件。构造函数QLabel 类支持以下构造函数: QLabel(QWidget *parent = 0, Qt::WindowFlags f = 0); QLabel(const QString &text, QWidget *parent = 0, Qt::WindowFlags f= 0); 其中第二个构造函数能够同时通过参数 text 给出要显示的文本,因此是最常用的构造方式。属性QLabel 对象的显示内容可以通过属性获取或修改,相关成员函数如下: QString text() const; // 获取显示的文本 void setText(const QString &text); // 设置显示的文本,这是一个槽 const QPixmap * …

QT

QT Creator 快捷键

F1使用方法:选中某一类或函数,按下F1,出现帮助文档  F2使用方法:选中某一类或函数,按下F2,迅速定位到该类或函数声明的地方或被调用的地方  Ctrl+鼠标滚轮的使用方法:按住Ctrl,使鼠标滚轮旋转,可调整字体的大小  Ctrl+F使用方法:(作用:查找当前文档)选中你想选的内容之后,按下Ctrl+F,会列出所有和你选的内容一样的语句  F4使用方法:在*.cpp和*.h之间切换  Ctrl+1,2,3,4,5,6使用介绍:在Welcome,Edit,Debug,Projects,Help,Output几种模式之间切换  F3作用:查找下一个你选的内容  Shift + F3作用:查找上一个你选的内容  Ctrl + Shift + F作用:弹出查找对话框  F5的作用:调试  F5: continue  shift + F5: stop debug  step over: F10 …

QT