自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

原创 Linux 常用命令汇总

一、查看某文件夹下文件的个数1、 ls -l|grep "^-"|wc -l 说明:ls -l 长列表输出该目录下的文件信;grep "^-" 对信息进行过滤,值保留一般文件,如果只保留目录 则是grep "^d" ; wc -l 统计输出信息的行数。(一行信息是一个文件)2、find ./filename -type f |w -l二、查看文件夹大小1、du -sh 查看当前文件夹大小 2、d

2017-06-28 19:01:48 301

原创 全排列非递归

递归的写法很好写,但是输出的并不是从小到大的排列。非递归的算法 就是按照字典序排列 思路: 1.对初始队列进行排序,找到所有排列中最小的一个排列Pmin。 2.找到刚刚好比Pmin大比其它都小的排列P(min+1)。 3.循环执行第二步,直到找到一个最大的排列,算法结束。如 a[5] = {1,2,3,4,5}; 这正好是字典序中最小的。 从此处开始 从后向前

2017-03-07 20:11:07 344

原创 SQL表格模型QSqlTableModel

QSqlTableModel The QSqlTableModel class provides an editable data model for a single database table. QSqlTableModel is a high-level interface for reading and writing database records from a single

2017-02-16 14:45:54 7317 2

原创 Qt数据库模型

Qt中使用了自己的机制来避免使用SQL语句,为我们提供了更简单的数据库操作及数据显示模型,分别是只读的QSqlQueryModel操作单表的QSqlTableModel可以支持外键的QSqlRelationalTableModelQSqlQueryModel The QSqlQueryModel class provides a read-only data model for SQL

2017-02-15 17:19:15 1219

原创 QSettings 保存配置信息

今天 想到自己写的tableWidget 在第二次打开时不能恢复第一次时进行过的操作。一开始想到的办法是 建立一个 三元组< row,column,item> 在每次对cell操作后都保存下来。最后在关闭的时候将这个三元组保存下来。 但问题出在 item 是 QTableWidgetItem 类型。流文件写入总是显示 <<运算符有错。应该是没有重载。 (其实可以保存 item->type()

2017-02-14 16:37:19 1067 1

转载 多窗口之间使用信号槽 信号槽连接方式

今天在 tablewidget中写了个委托。 想实现 点击委托中的editor(一个button),在主窗口能够显示菜单。 一开始就想到了信号槽机制,但是问题在于 button 是 委托中的,没法直接与主窗口进行connect。后来发现,是自己信号槽没学好,在这里可以使用自定义的方式。 将button与委托关联,然后委托与主窗口关联。可以参照博文: http://blog.csdn.net/l

2017-02-14 09:52:51 3553

原创 View & Delegate

QAbstractItemModel 提供标准的模型接口,QAbstractItemView 提供标准的视图接口。结合这两者,就可以将数据同表现层分离。视图管理来自模型的数据的布局:既可以直接渲染数据本身,也可以通过委托渲染和编辑数据。 视图不仅仅用于展示数据,还用于在数据项之间的导航以及数据项的选择。另外,视图也需要支持很多基本的用户界面的特性,例如右键菜单以及拖放。视图可以提供数据编辑功能,也

2017-02-13 11:36:03 247

转载 QFileSystemModel

QFileSystemModel 的作用是维护一个目录的信息。因此,它不需要保存数据本身,而是保存这些在本地文件系统中的实际数据的一个索引。 这与 QStandardItemModel 不同,QStandardItemModel 能够让列表、表格、树等视图显示不同的数据结构,这种Model 会保存实际数据。Demo#include "Widget.h"#include "ui_Widget.h"

2017-02-13 10:18:07 1330

转载 QStringListModel

转载自: QStringListModel是最简单的模型类,具备向视图提供字符串数据的能力。QStringListModel 是一个可编辑的模型,可以为组件提供一系列字符串作为数据。我们可以将其看作是封装了 QStringList 的模型。 QStringList 是一种很常用的数据类型,实际上是一个字符串列表(也就是 QList< QString>)。既然是列表,它也就是线性的数据结构,因此,

2017-02-07 17:12:59 1138

原创 Qt 文件操作 & 容器

QIODevice:所有 I/O 设备类的父类,提供了字节块读写的通用操作以及基本接口;QFlie:访问本地文件或者嵌入资源;QTemporaryFile:创建和访问本地文件系统的临时文件;QBuffer:读写 QByteArray;QProcess:运行外部程序,处理进程间通讯;QAbstractSocket:所有套接字类的父类;QTcpSocket:TCP 协议网络数据传输;QUd

2017-02-07 16:23:37 1408

转载 布局管理器的使用

布局管理类 介绍:**- QHBoxLayout 水平布局 - QVBoxLayout 垂直布局 - QGridLayout 网格布局 - QStackedLayout 把子控件进行分组或者分页,一次只显示一组或者一页,隐藏其他组或者页上的控件。**布局管理中结合控件的sizePolicy属性,进行调整结合控件的SizePolicy属性,来控制布局管理中的控件的尺寸自适应方式。控件的s

2017-02-07 13:44:39 372

原创 Qt Undo

Undo Redo 注意,push可能会删掉一些操作,如图 四个类QtUndoCommand - 用于修改document的对象的基类QtUndoStack - QtUndoCommand对象的堆栈QtUndoGroup - undo堆栈的组。很多应用程序允许用户同时打开超过一个文档,该类允许你把一组undo堆栈按一单个stack对待。QtUndoView - 继承自QListWidget,用

2017-02-06 17:25:59 2092

原创 一些小问题

今天 发现 自己做的Demo有个小问题。 在tablewidget中隐藏的conbox 会在窗口改变的时候显示出来(不想让它显示)。 原因在于: 我把tablewidget放在layout中的,窗口更改的时候 layout会重画 ,从而导致combox会重新 visible。 这就很尴尬了。解决方式: 不用布局, 但是这样一来,tablewidget的大小不会改变。 暂时未找到更好的方

2017-02-04 17:35:50 199

原创 Demo_3

使用菜单而不是combox的下滑栏的选项。若使用combox来进行操作在加减附件时,只想到了谈出新的对话框让用户选择的方式。 于是干脆添加一个空的combox 在点击该widget时发送信号,弹出菜单。这里的信号槽使用的是:QObject::connect(tableWidget,SIGNAL(cellClicked(int,int)),this,SLOT(handlePress(int,int)

2017-02-04 16:17:01 203

转载 Signals & Slots

信号当某个信号对其客户或所有者发生的内部状态发生改动,信号被一个对象发射。只有定义过这个信号的类及其派生类能够发射这个信号。当一个信号被发射时,和其相关联的槽将被即时执行,就象一个正常的函数调用相同。信号-槽机制完全独立于所有GUI事件循环。只有当所有的槽返回以后发射函数(emit)才返回。如果存在多个槽和某个信号相关联,那么,当这个信号被发射时,这些槽将会一个接一个地执行,不过他们执行的顺序将会是

2017-02-03 17:20:27 280

原创 QTableWidget的使用大全

http://www.cnblogs.com/etwd/p/4549389.html

2017-02-03 16:07:16 363

原创 Demo2

关于 QComboBox 终极解决办法: 用了n中方法在tableWidget中显示combox,一直出现各种问题(上一篇博客)。 这次使用了一个比较暴力的办法: 每点击一个cell就生成一combox,用完之后就删除。 这个方法一开始就想到了,问题在于用delete 就程序崩溃了。 意外发现 QComBobox 有方法:void QObject::deleteLater() 可以拿来

2017-02-03 16:05:08 330

原创 做Demo

一. 关于十字形高亮的解决方法:使用选择视图QItemSelectionModel .//将第row行与第column设置为高亮void Widget::setHighlight(int row,int column){ QItemSelectionModel *selectionModel = tableWidget->selectionModel(); QMode

2017-01-22 17:06:39 295

原创 QTableWidget,QListWidget,QTreeWidget

QTableView & QTableWidgetQTableWidget是QTableView的子类;主要的区别是: QTableView可以使用自定义的数据模型来显示内容,先要通过setModel来绑定数据源; QTableWidget则只能使用标准的数据模型,不需要数据源,将逐个单元格内的信息填好即可。 list,Tree同理。QTableWidget: QTableWidget

2017-01-19 14:38:19 366

原创 在table(0,0)中是实现电子表功能(接上一个Demo)

显示时间很简单:case Qt::DisplayRole : //展示 if(row == 0 && column == 0) return QTime::currentTime().toString();问题在于如何让他每秒都会刷新。解决方案是,定时器 , 信号/槽。添加槽函数:void timerHit()void StringListModel::ti

2017-01-18 16:29:28 371

原创 一个 只读 readonly 示例

stringListModel.cpp#ifndef STRINGLISTMODEL_H#define STRINGLISTMODEL_H#include <QAbstractListModel>#include <QStringList>class StringListModel : public QAbstractListModel{public: StringListMode

2017-01-18 15:48:20 578

原创 model/view 结构

model/view 结构

2017-01-18 12:43:33 290

原创 给数据加ID映射

处理数据的时候,想给 电影名,用户名加上id。第一想到的是 用程序写(读电影名;判重;加ID) 然后查资料,想直接用数据库进行操作。方法:

2016-04-27 18:23:17 1905

原创 表的复制语句: select into 和 insert into select

select into SELECT vale1, value2 into Table2 from Table1要求目标表Table2不存在,因为在插入时会自动创建表Table2insert into select Insert into Table2(field1,field2,…) select value1,value2,… from Table1要求目标表Table2必须存在,

2016-04-27 18:04:22 226

转载 MySQL 索引的创建、查看、删除

索引在提高查询速度方面真心很强大。创建索引查看索引删除索引索引的弊端索引使用的注意事项

2016-04-27 17:56:04 537

转载 MySQL JOIN (inner 和 left 的区别)

MySQL JOIN 的分类inner join(内连接):取得两个表中存在连接匹配关系的记录left join (左连接):以左表为基准(取左表所有记录),右表匹配向左表 right join(右连接):与left join 相反

2016-04-27 17:34:11 8345

转载 MySQL distinct 返回其他字段

在使用MySQL时,有时需要查询出某个字段不重复的记录,distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是 distinct只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰了很久,用distinct不能解决的话,我只有用二重循环查询来解决,而 这样对于一个数据量非常大的站来说,无疑

2016-04-27 17:00:03 6449 3

原创 MySQL免安装版 安装,卸载,找不到指定文件

安装:配置my.ini: basedir = mysql 的路径 datadir = 数据库存放路径,在mysql文件夹中有个data。path 配置:将mysql 的bin 目录 添加 到Path 中.cmd.exe(以管理员身份运行,否则没权限) 中 输入mysqld -install 如果前面步骤没错,则会显示 successfully!(依然管理员身份) net sta

2016-04-15 11:17:23 1026

原创 MySQL 数据导入,导出

数据导入数据库: load data local infile ‘E:\innew.txt’ into table table_name fields terminated by ‘\t’;数据库数据导出: select * from table_name into outfile ‘E:/outnew.txt’;也可以导入、导出xls 格式。只不过是 后缀换一下。 当然,也可以用第三方软件,

2016-04-15 10:40:32 361

原创 Scrapy 爬取 豆瓣电影的短评

之前爬取电影信息的时候,将电影短评的url一并存起来了。 因此爬取电影短评的时候只需将数据库中存在的url 放入start_urls中就好了。spider.py# -*- coding: utf-8 -*-from scrapy.selector import Selectorfrom scrapy.spiders import Spiderfrom scrapy.http import R

2016-04-15 10:30:35 7444 1

原创 scrpy 豆瓣电影信息爬取

scrapy 的组件和 流程: 前段时间因为需要,爬了几部豆瓣电影,才开始接触scrapy ,不过网上代码很多,而且文档里也有不少例子。所以 入门还是很容易的。 这里附一下 文档的地址: https://scrapy-chs.readthedocs.org/zh_CN/0.24/index.html; https://scrapy-chs.readthe

2016-04-15 09:41:16 1548

转载 Python 字符串操作

1.复制字符串 strcpy(sStr1,sStr2) sStr1 = ‘strcpy’ sStr2 = sStr1 sStr1 = ‘strcpy2’ print sStr22.连接字符串 strcat(sStr1,sStr2) sStr1 = ‘strcat’ sStr2 = ‘append’ sStr1 += sStr2 print sStr13.查找字符 strchr(

2016-03-24 12:55:37 259

原创 石子合并的动态规划解决方案

问题描述: 在一个圆形操场的四周摆放着n 堆石子。现将石子有次序地合并成一堆。规定每次只能选相邻的2 堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。试设计一个算法,计算出将n堆石子合并成一堆的最小得分和最大得分。动规合并过程:以序列: 9 6 7 9 20 为例:第一次合并: 15 7 9 20 //9,6合并 score = 15第二次合并:

2015-12-29 16:23:38 636

原创 吝啬的国度 nyoj

描述在一个吝啬的国度里有N个城市,这N个城市间只有N-1条路把这个N个城市连接起来。现在,Tom在第S号城市,他有张该国地图,他想知道如果自己要去参观第T号城市,必须经过的前一个城市是几号城市(假设你不走重复的路)。输入第一行输入一个整数M表示测试数据共有M(1每组测试数据的第一行输入一个正整数N(1随后的N-1行,每行有两个正整数a,b(1输出每组测试数据

2014-12-22 22:57:20 547

原创 NYOJ 寻找最大数(三)

描述给出一个整数N,每次可以移动2个相邻数位上的数字,最多移动K次,得到一个新的整数。求这个新的整数的最大值是多少。输入多组测试数据。每组测试数据占一行,每行有两个数N和K (1 ≤ N≤ 10^18; 0 ≤ K ≤ 100).输出每组测试数据的输出占一行,输出移动后得到的新的整数的最大值。样例输入1990 1100 09090000078

2014-11-06 16:50:27 645

原创 用STL的写全排列

next_permutation (BidirectionalIterator first, BidirectionalIterator last):n个元素有n!种排列。这些排列中,规定升序序列为最小排列,降序序列为最大的排列,任意两个排列按照字典序分出大小。该函数返回当前序列作为一个排列按字典序的下一个排列。

2014-10-13 16:05:07 433

转载 会场安排问题 贪心算法

描述学校的小礼堂每天都会有许多活动,有时间这些活动的计划时间会发生冲突,需要选择出一些活动进行举办。小刘的工作就是安排学校小礼堂的活动,每个时间最多安排一个活动。现在小刘有一些活动计划的时间表,他想尽可能的安排更多的活动,请问他该如何安排。输入第一行是一个整型数m(m每组测试数据的第一行是一个整数n(1随后的n行,每行有两个正整数Bi,Ei(0输出对于每一组

2014-10-04 16:19:07 594

原创 排队 约瑟夫环

描述周末了,软件ACM的队员准备玩玩游戏,娱乐一下,CY想了一个好主意,所有队员站成一个圈,从1开始报数,凡是报出指定数字的人要出列,有人出列后,下个人重新从1开始报数。最后一位“幸存者”要给大家表演个节目。由于队员正在不断的壮大,C小加又想知道他是否需要准备表演,请你设计个程序,帮他确定他是否是“幸存者”。输入第一行是n,有n次游戏,第二行是m,x,表示某次游戏有m个人,

2014-09-17 20:50:16 544

原创 C语言 快速排序

#include#includevoid quicksort(int a[],int left,int right){int i=left;int j=right;int temp=a[left];if(left>right)return;else{while(iwhile(a[j]>=temp&&ij--;a[i]=a[j];whi

2014-09-16 17:38:46 478

原创 C语言 while(feof(fp)){}多循环一次解决方案

不用feof()使用fgetc(fp)==EOF判断是否进行x

2014-07-01 21:34:46 2862

空空如也

空空如也

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

TA关注的人

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