- 博客(112)
- 资源 (5)
- 收藏
- 关注
原创 PyCharm退回上一步,前进下一步
PyCharm版本:PyCharm 2020.1.3菜单:View->Appearance->Toolbar"<--"退回上一步 (快捷键:Ctrl+Alt+左箭头),"-->"前进下一步(快捷键:Ctrl+Alt+右箭头)。
2020-11-26 10:20:16
31090
3
原创 github 远程仓库(原作者的仓库)和你的fork仓库保持一致
步骤1、切到你要的分支:git checkout branch_name2、拉取upsteam(原作者仓库的别名)仓库的代码:git fetch upstream3、合并upsteam(原作者仓库的别名)仓库的代码到你的本地对应的分支:git merge upstream/branch_name4、推送你的本地代码到你自己的github对应的分支:git ...
2019-12-19 18:58:06
844
原创 git: Your branch is ahead by X commits 的解决方案
产生原因因为你在pull或者fetch原作者代码的时候会产生新的commit记录,这条commit其实是让你的库和原作者的库代码一致,但是却会生成一条和你修改代码后提交的commit一样的记录,导致你的仓库的基(base)和原作者的仓库的基(base)产生偏移,所以git会提示Your branch is ahead by X commits解决方案当你的github ...
2019-12-19 18:45:17
8408
原创 TinyXML-2 读 XML 文件
要读的XML文件示例代码#include <iostream>#include "tinyxml2.h"using namespace std;using namespace tinyxml2;/**************************************<?xml version="1.0" encoding="UTF-8"?>...
2019-10-09 22:11:48
814
1
原创 TinyXML-2 写 XML 文件
要写入xml文件的内容<?xml version="1.0" encoding="UTF-8"?><!--this is a comment--><html> <head>this is a heading!</head> <body> <p>this is a paragraph!<...
2019-10-09 21:41:17
957
原创 Qt 图形视图框架(Qt MVC)
什么是MVCMVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构...
2019-09-13 22:31:39
2076
原创 表白神器制作
1、新建一个文本本件,输入你想表白的话:代码如下:msgbox("xxx我喜欢你~")msgbox("没有你我活不了~")msgbox("嫁给我好不好~")msgbox("爱你么么哒~")2、保存,更改文件后缀名为vbs(新建文本文档.vbs):3、选择你要伪装成得软件,比如你想伪装成微信。右击微信--->属性--->复制目标中的字符:4、右击...
2019-09-04 23:59:37
5359
5
原创 C++11智能指针之shared_ptr
引入智能指针的背景(目的)智能指针的引入主要为了解决程序员在使用new之后该释放(delete)内存的地方没释放(delete),要确保用 new 动态分配的内存空间在程序的各条执行路径都能被释放是一件麻烦的事情。C++11 模板库的 <memory> 头文件中定义的智能指针,即 shared _ptr 模板,就是用来部分解决这个问题的。shared_ptr只要将 new...
2019-08-21 00:02:50
908
原创 基于vue.js的购物车demo
需求:购物车展示一个已加入购物车的商品列表,包含商品名称、商品单价、购买数量、操作和购买总价。其中购买数量可以增加或减少,每类商品可以从购物车中移除。在浏览器上的运行结果:源代码共三个文件:index.html、index.js、style.css:index.html主要包含页面信息:<!DOCTYPE html><html><head&g...
2019-03-31 17:11:40
1449
原创 HTML之title标签
<title></title>*title标签由开始标签和结束标签组成,代表网页标题,会显示在浏览器的标题栏;*title是head标签中唯一要求包含的东西(没包含默认以html文件名作为标题) 示例代码<!DOCTYPE html> <html><head></head> <meta ch...
2018-09-16 18:59:14
3194
原创 html文档结构
一个简单的html文档结构示例<!DOCTYPE html> <html><head> <!-- add other tag or content here! --> <meta charset="utf-8"> <title>html标题</title></he
2018-09-16 16:58:16
366
原创 HTML 标签(tag)
*html标签是由尖括号包围的关键词,例如<html>、<head>、<title>等等;*html标签通常是成对出现的,例如<b>和</b>等;*标签中的第一个标签是开始标签(也叫头标签),第二个标签是结束标签(也叫尾标签);*开始标签和结束标签也被称为开放标签和闭合标签;*“HTML标签”和“HTML元素”通常是同样的...
2018-09-16 10:26:09
13713
原创 HTML
概念日常人们常说的网页就是通过HTML标记语言编写的一个个html文件。 HTML基本常识*HTML是用来描述网页的一种语言;*HTML指的是一种标记语言:是hyper text markup language 的缩写;*HTML是一种标记语言,并不是一种编程语言;*HTML是一套标记标签(markup tag)构成的文档(后缀为.html或.htm);*HTML使...
2018-09-16 09:40:22
249
原创 Git 冲突:commit your changes or stash them before you can merge 的解决办法
问题背景当使用git pull 来更新本地代码的时候,有时候会出现冲突,,提示:Please,commit your changes or stash them before you can merge,该提示上面会显示出冲突的文件。 问题分析出现该问题的原因是你正在本地修改文件a.cpp,你的团队中另外一个人也修改了该文件并且已经提交到版本库中了,然后你们可能修改了代码的同一个...
2018-07-23 08:14:43
5669
原创 安装了Node.js 从VScode 使用node -v 和 npm -v等命令却无效
前言最近写TypeScript需要安装、配置Node.js环境,楼主是使用的安装包所以环境变量都是自动就配好了(如果是下载的zip压缩包解压后要自己配置到系统环境变量中)。打开系统终端敲入命令 node -v 和 npm -v 也都有显示对应的软件包版本号,但是在VScode(Visual Studio Code)终端下敲入同样的命令却显示为无效命令。安装包自动配置的环境变量:使用系统终端查看的...
2018-06-01 00:54:49
38789
12
原创 TypeScript基本数据类型
前言TypeScript是一种由微软开发的自由和开源的编程语言。它是JavaScript的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。安德斯·海尔斯伯格,C#的首席架构师,已工作于TypeScript的开发。2012年十月份,微软发布了首个公开版本的TypeScript,2013年6月19日,在经历了一个预览版之后微软正式发布了正式版TypeScript 0.9,向未...
2018-05-14 00:13:57
2157
原创 C++语言实现顺序表数据结构
概念顺序表是最基本的数据结构之一,它属于线性表的一种存储表现形式,在计算机内部表示为一块连续的内存空间。C++实现顺序表代码#include <iostream>using namespace std;template <typename T> class SeqList{public: SeqList(int size = defaultSize)...
2018-05-10 23:38:37
1921
原创 漫谈设计模式之策略模式(Strategy Pattern)
概念Strategy模式也叫策略模式是行为型模式之一。它对一系列算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实现,具体的算法选择交由客户端决定(策略)。Strategy模式主要用来平滑地处理算法的切换。策略模式结构图Strategy: 策略算法抽象;ConcreteStrategy: 各种策略(算法)的具体实现;Context: 策略的外部封装类...
2018-04-25 22:12:22
326
原创 漫谈设计模式之责任链模式(Chain Of Responsibility)
概念Chain Of Responsibility(CoR)模式也叫责任链模式,是行为模式之一。该模式构造一系列分别担当不同的职责的类对象来共同完成一个任务,这些类的对象之间像链条一样紧密相连,所以被称为责任链模式(或者职责链模式)。责任链模式类结构图Handler: 处理类的抽象父类;ConcreteHandler:具体的处理类;实例代码代码完成一个造车流程:造车头,造车身,造车尾。非责任链模式...
2018-04-24 20:52:30
611
原创 漫谈设计模式之命令模式(Command)
概念Command模式也叫命令模式,是行为设计模式的一种,Command模式通过被称为Command的类封装了对目标对象的调用行为以及调用参数。 在面向对象的程序设计中,一个对象调用另一个对象,一般情况下的调用过程是:创建目标对象实例-->设置调用参数-->抵用目标对象的方法。但在有些情况下有必要使用一个专门的类对这种调用过程加以封装,我们把这种专门的类称作command类。整个调用过...
2018-04-23 00:53:56
440
原创 漫谈设计模式之模板模式(Template)
概念模板模式(Template Method)也叫模板方法模式,属于行为型设计模式之一。它把具有特定步骤算法中的某些必要的处理委让给抽象方法。通过子类继承对抽象方法的不同实现改变整个算法的行为。模板方法模式结构图从结构图中我们可以看出父类(抽象类)除了提供给子类一套接口外还多了一个TemplateMethod()方法,这个方法也叫模板方法用于管理其他接口的调用顺序。也就是说,在抽象类中统一操作步骤...
2018-04-22 15:52:55
390
原创 Linux 下 安装 SQLite
下载安装包去sqlite官网(http://www.sqlite.org/index.html):点击Download按钮(跳转到http://www.sqlite.org/download.html):点击下载安装包,下载完成后将安装包拷贝到Linux机器上(楼主是在Windows上下载的,如果你就是在Linux上下载的则忽略这步)。安装步骤1、解压文件 tar -zxvf sqlite-aut...
2018-03-09 15:07:33
3858
原创 QT5 error: cannot find -lGL
遇到的问题今天在Debian上安装Qt5.7.1时遇到运行Qt自带测试程序提示error: cannot find -lGL。错误信息提示找不到OpenGL相关的库,楼主之前在Ubuntu上装过没有遇到类似的问题。最后总结了下原因主要是因为Qt5.0默认会将OpenGL加入工程,但是有的机器上没有安装OpenGL。解决方案就是在当前机器上安装OpenGL。安装步骤1、安装基本的编译环境$ sudo...
2018-03-07 18:15:58
1054
原创 基于QML的图片浏览器
演示截图工程演示中会看到的两个窗体分别是一个文件选择对话框和一个图片浏览器窗体。1、文件选择对话框界面如下:因为博主是在window下运行的代码,所以Qt Quick默认就适用了Windows系统的对话框(风格)。不同的操作系统上会有不同的原生文件选择对话框,如果没有的话Qt Quick会使用默认的QML文件对话框。2、图片浏览器也是我们使用QML代码实现的图片浏览器窗体如下:工程代码import...
2018-03-04 15:41:41
2031
原创 Qt 之 QSplitter Class
详细描述QSplitter 类实现了一个分离器部件。先看一下控件使用分离器(QSplitter)后的演示效果:左边是一个QTreeWidget,右边是一个QWidget上边放置一个QLabel。没有使用QSplitter之前两个控件的大小是不可以通过拖拽它们之间的边界来调整的。一个分离器允许用户通过拖拽控件之间的边界来控制它里面子控件的大小。任何数量的控件都可以由一个分离器控制。典型的使用QSpl...
2018-03-02 12:39:48
2139
原创 SQLite datatime()函数为何获取不到系统本地时间?
前言最近项目中频繁用到SQLite的时间日期这些函数,发现一个很奇怪的问题:就是当使用datetime()函数获取日期时间时,得到的日期时间和你系统的本地时间是不一致的。有图有真相系统时间是2018-02-11 04:07:xx(pm) ,但是通过datetime() 获得的日期时间却是2018-02-11 08:07:03。如何获得系统的日期时间为什么会出现这种情况?难道是SQLite的bug?...
2018-02-11 11:44:21
3042
原创 QML属性详解
简介QML的元素使用它们的元素类型名来进行声明,使用它们的属性或者创建自定义属性来定义。一个属性对应一个值(代码格式为: 属性名:属性值),例如:width:100;text:'Hello QtQuick';color: "#f0f0f0";一个属性有一个类型定义并且需要一个初始值。代码实例以Text QML Type为例来学习一下QML的属性知识点: Te
2018-01-20 14:03:54
2632
原创 QML 语法(Syntax)
简介QML(Qt Markup Language:Qt 标记语言)是一种描述用户界面的声明式语言。它将用户界面分解成一些更小的元素,这些元素能够结合成一个组件(Component)。QML语言描述了用户界面元素的形状和行为。用户界面能够使用JavaScript来提供修饰,或者增加更加复杂的逻辑。从这个角度来看它遵循HTML-JavaScript模式,但QML是被设计用来描述用户界面的,而不是
2018-01-19 19:23:13
1147
转载 SQL删除重复数据只保留一条
在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1) 2、
2018-01-16 14:38:54
1279
1
原创 QHeaderView sectionResized()信号和geometriesChanged()信号的异同
简述背景最近博主在写一个项目的时候需要在QHeaderView的size改变的时候自己获取QTableView表头各个section的width()来实现,自己自定义的控件。实现思路是在表头的size发生改变的时候获取一下表头各个section的width。一开始楼主使用的是void sectionResized(int logicalIndex, int oldSize, int newSi
2018-01-03 16:59:11
1479
原创 QTreeWidget简单使用之一
详细描述QTreeWidget类提供了使用预定义树模型的树视图。QTreeWidget类是一个方便的类,它提供了一个标准树小部件,它具有一个经典的基于项目的接口,类似于Qt 3中的QListView类所使用的接口。这个类基于Qt的模型/视图架构,并使用默认模型来保存项目,每个项目都是一个QTreeWidgetItem。不需要模型/视图框架灵活性的开发人员可以很容易地
2017-12-27 17:05:17
4152
1
转载 2018 最具就业前景的 7 大编程语言,Java、Python 和 JavaScript 前三无悬念?
2018 年即将到来,Coding Dojo(编码道场)近期发布了 2018 最具就业前景的 7 大编程语言。该公司分析了来自 Indeed 的 25 门编程语言、栈和框架的数据,以找出雇主最需求的七个数据。数据基于每种语言的工作发布数量。需先说明的是,国内和国外的情况有所差异,以下数据和分析仅供参考。结果发现,位居前三名的分别为 Java、Python 和 JavaS
2017-12-19 19:08:20
739
原创 Qt Linux 连MySQL出现libqsqlmysql.so路径问题
在Linux下使用Qt连接MySQL的时候运行如下代码:QSqlDatabase::addDatabase("QMYSQL");经常遇到以下错误:QSqlDatabase: QMYSQL driver not loadedQSqlDatabase: available drivers: QSQLITE QPSQL QPSQL7主要是因为MySQL驱动的问题,在Q
2017-12-19 17:57:23
2200
原创 Qt Creator 自动补齐函数参数问题
遇到的问题使用Qt Creator集成开发环境进行项目编码时,经常需要重写父类的虚函数去实现自己想要的功能,但是当声明这些函数时,经常遇到函数名可以自动补齐,但是函数的参数却不能自动补齐的情况,可能是有些Qt Creator的版本支持只要敲函数名的前几个字符就会把函数名连同参数一并给补全,但是博主使用的IDE版本中大都都只是补全函数名,函数参数不会自动补全。如何解决一开始博主以
2017-12-06 20:52:06
7869
11
原创 SQL 实现日期(时间)相加减
前言时间(日期)的相加减是编程中经常会遇到的场景,我们使用的很多第三方库都会提供相应的API来供程序员实现时间(日期)的相加减。楼主一直使用的Qt库的QDate类就有提供addDays()系列API供程序员调用。在结构化查询语言SQL中同样可以实现时间(日期)的相加减,下面就来看几个例子。SQL实现日期(时间)加减实例SQL实现时间相加减:select date(date(
2017-12-01 19:45:32
91617
2
转载 Linux系统下 解决Qt5无法连接MySQL数据库的方法
Linux平台下解决Qt5连接mysql数据库的问题:输入sudo apt-get install libqt5sql5-mysql解决,这种方法只能解决Qt是用sudo apt-get install qt-sdk命令装的低版本的Qt5(如5.2.x)缺少MySQL驱动问题,如果你的Qt5版本为5.7.X,那么就不能用这种方法解决,请参考下面的方法。 传统解决方法:一、解决问题
2017-12-01 18:48:56
2245
原创 SQL 字符串拼接
前言字符串拼接是编程中经常会遇到的场景。在C语言中我们使用 char *strcat(char *dest, const char *src) 将src字符串拼接到dest字符串后面;C++更是通过操作符重载实现了可以直接对两个字符串进行相加操作(string str = "纯屌丝" + "程序员",则str="纯屌丝程序员");在结构化查询语言中则是通过‘||’符号实现字符串的拼接的。
2017-11-29 17:21:57
1835
转载 Linux中samba服务器的搭建
使用的vmware12虚拟机安装的centos6.8和物理机上的windows10,实现在windows10 上访问CentOs上的samba服务。一、先查看系统中是否安装有samba服务相关的软件包。 查看到我的linux中没有安装samba相关的软件包,接下来进行安装几个相关的软件包:samba-3.6.9-151.el6.x86_64
2017-11-28 14:54:29
551
原创 QTableView根据内容自动调整大小(resizeColumnToContents解决不了的)
前言最近使用QTableView比较频繁,出现了一些比较奇葩的问题,其中之一就是QTableView在显示来自模型的数据时,经常会显示...省略了内容的后半部分。如下图:查看帮助文档可以找到resizexxxxToContents()系列接口:根据内容自动调整某列的列宽void QTableView::resizeColumnToContents ( int c
2017-11-23 19:12:30
33367
17
原创 Qt 数据库模型(QSqlQueryModel,QSqlTableModel)获取模型中的所有数据
数据模型默认不是显示所有数据最近使用QTableView结合QSqlQueryModel以及QSqlTableModel在写很多报表,中间产生了一系列出乎意料的现象。其中之一就是QSqlQueryModel,QSqlTableModel这两个数据库模型默认加载数据的时候不是加载所有的数据,而是只加载256条数据(前提是数据源有大于256的数据,如果没有的则有多少条就加载多少条数据)。下图就
2017-11-23 17:45:37
13709
2
QTreeWidget简单使用
2017-12-28
QCheckBox使用示例
2017-09-27
QPushButton使用例子
2017-09-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人