摘要: 1.什么是类? 类是面向对象编程的基础。 一个类定义一个数据类型,很像c语言中的结构体。一个类具有状态(成员变量)和改变状态的操作(成员函数或接口) 2.什么是对象? 对象通常指的是一个类的实例。 3.什么是一个好的接口?(一个类中定义了很多方法,我们调用方法,就是调用接口) a.隐藏不必要的细节, 阅读全文
posted @ 2017-05-30 18:18 billxyd 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 使用过mfc编程,就知道控件需要自己拖放。当一个界面有很多小控件时,摆放这些控件特别麻烦。 但是qt编程中有布局(Layout),让系统来摆放控件。使整个控件有一致的外观和感觉,特别方便。 1.水平方向的布局 QHBoxLayout 思考: 简单的把控件添加到布局里面就ok了。 2.栅格布局。QGr 阅读全文
posted @ 2017-05-30 01:09 billxyd 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 1.c++是一门实用的语言吗? c++是一个实用的工具,它很有用。 在工业软件世界中,c++被视为坚实和成熟的主流工具。它具有广泛的行业支持和好批。 2.面向对象编程在c++中的作用? 我们要开发一个大型、复杂的应用程序或者系统。使用面向对象编程是最好的方式。 oo吹嘘:现代软件行业,需求越来越复杂 阅读全文
posted @ 2017-05-29 23:10 billxyd 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 任务1:显示如图的树形结构 思考: 1.使用QTreeView显示。 2.Model使用QStandardItemModel,qt的一个标准model。 3.QStandardItemModel下每一个单元都可以看作QStandardItem。 4.QStandardItemModel中invisi 阅读全文
posted @ 2017-05-29 22:10 billxyd 阅读(1000) 评论(0) 推荐(0) 编辑
摘要: 任务:给表单的每一列添加列名。 思考: 1.只需要添加一个函数 headerData()。 横向方面添加列名 代码如下: 阅读全文
posted @ 2017-05-29 01:10 billxyd 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 任务:3x2的表格,第一个单元格显示当前时间 思考: 1.data函数里面QTime::currentTime()显示当前时间 2.但是这个事件是一个固定的时间,不会变动 3.需要时间变动,View就得每秒中都从Model中调用data函数。 4.这里就需要定时器。 5.定时器每秒发射1个信号。这个 阅读全文
posted @ 2017-05-29 01:05 billxyd 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 任务:显示一个2x3的表格,将表格中的数据显示如下: 思考: 1.如何显示数据和上个例子一样。 2.但是每个单元格的数据都是有角色划分的。 Qt::ItemDataRole 3.View从Model中获取数据,通过data函数。每一个单元格根据角色,调用多次data函数。个人理解:单元格什么角色都调 阅读全文
posted @ 2017-05-29 00:18 billxyd 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 1.如图显示一个2x3的表格: 思考: 1.QTableView显示这个表 2.QAbstractTableModel作为模型类。 3.文档中找到subclass的描述 When subclassing QAbstractTableModel, you must implement rowCount 阅读全文
posted @ 2017-05-28 22:56 billxyd 阅读(379) 评论(0) 推荐(0) 编辑
摘要: Concepts 不像MVC模式,Model/View模式并没有单独用来处理事件和用户交互的组件(controller)。通常,视图负责向用户呈现模型中的数据,并处理用户的输入。有时,为了让输入更加灵活,使用Delegate处理交互。Delegate组件提供输入功能,还负责渲染某个Item。Dele 阅读全文
posted @ 2017-05-28 21:25 billxyd 阅读(417) 评论(0) 推荐(0) 编辑
摘要: Basic Concepts 在Modle/View 结构中,View从Model中提取数据,并显示给用户。View显示数据的方式不一定与Model中数据排列方式相同,也可能与底层数据结构完全不同。 通过QAbstractItemView提供标准的视图接口,QAbstractModelView提供标 阅读全文
posted @ 2017-05-28 13:24 billxyd 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 任务: 1.新建一个空的mainwindow项目 2.debug下编译得到一个文件夹,应用程序输出这个文件夹中的文件(不显示文件夹中的文件夹) 3.使用QFileSystemModel完成。 本例显示结果: Makefile Makefile.Debug Makefile.Release ui_ma 阅读全文
posted @ 2017-05-28 02:06 billxyd 阅读(1199) 评论(0) 推荐(0) 编辑
摘要: Basic Concepts 在Model/View结构中,Model提供标准的接口让View和Delegate获得数据。在QT中,标准的接口都被定义在QAbstractItemModel类中。不论数据如何存储在底层的数据结构中,任何QAbstractItemModel的子类,将数据表示为表或者树等 阅读全文
posted @ 2017-05-28 01:26 billxyd 阅读(694) 评论(0) 推荐(0) 编辑
摘要: Introduction to Model/View Programming QT4 介绍了一系列新的 Item View 类,这些类使用Model/View结构来管理数据和数据如何呈现给用户。这种结构使程序员更加灵活的开发和定制呈现数据界面,Model/View结构提供标准的Model接口让各种数 阅读全文
posted @ 2017-05-28 01:17 billxyd 阅读(2027) 评论(0) 推荐(0) 编辑
摘要: 通过document view设计,我们把应用程序的状态(clicktimes)从一个简单的类设计中抽取出来。下一个目标是抽取转化主要的事件(这个例子里面是鼠标点击之后释放)为应用程序逻辑从而改变应用程序状态(让clicktimes 加1)的代码。最终成为传统的MVC 在传统的MVC中,docume 阅读全文
posted @ 2017-05-28 01:13 billxyd 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 为了解决一个类实现所有功能的缺陷,我们把application分为2个部分。一个部分业务逻辑,一个部分视觉渲染和交互。这2个类在学术上被称为document view 或者 model delegate。 Document类用来处理业务逻辑,和视觉渲染、GUI事件没有一点关系。它简单的存储应用程序的 阅读全文
posted @ 2017-05-27 22:44 billxyd 阅读(224) 评论(0) 推荐(0) 编辑