QT自带例程Boxes使用QT Graphics View框架实现了2D图形和3D图形的混合渲染,综合性比较强,整合知识较多,值得学习. 可以使用鼠标通过以下方式控制演示中的元素: 按住鼠标左键的同时拖动鼠标可以旋转中心的Box. 按住鼠标右键的同时拖动鼠标会旋转卫星箱. 按住鼠标滚轮的同时拖动鼠标会旋转整个3D背景层. 滚动鼠标滚轮可放大和缩小场景. 选项窗格可用于微调Demo中的各种参数,包括颜色和像素着色器 原始的在Widget中绘图通过重写paintEvent绘图响应函数,在其中使用QP…
分类:Unity.C#.VS2015 创建日期:2016-05-19 一.简介 在场景视图中设计不同的场景内容时,可以根据需要勾选相关的渲染选项,以便让场景仅显示其中的一部分或者全部渲染效果. 在这些模式中,其中有一套模式能看到全局光照在干什么事.默认情况下,纹理模式是根据 GI 设置来完全照亮场景的. 其他与GI有关的模式还包括:反照率(Albedo).发射光(Emissive). UV 图表(UV Charts). 辐照度(Irradiance). 方向性(Directionality).…
在之前的一篇文章中,实现了QT场景视图的打印功能,主要通过render函数来实现,非常简单和方便. 在实际的项目需求中,除了打印整个场景外,还需要对单个图形进行打印操作,基于item的图形可以在paint函数中打在QPrinter作为绘图设备实现打印,基于Widget的图形则提供了更方便的render函数,都可以很好地实现.但是,如果图形存在父子嵌套关系,则需要在打印该图形时,连同其子图形以及孙子图形也要一起打印出来,为此,本文对此进行了研究,方便参考. 目的:实现QT场景视图中父子关系打印 具…
之前学习QT Graphics View框架,除了基本的图元外,还可以通过QGraphicsProxyWidget类添加QT的基本Widget(如按钮.复选框.单选框等),常使用的场景类接口如下: QGraphicsProxyWidget *QGraphicsScene::addWidget(QWidget *widget, Qt::WindowFlags wFlags = ...) 为窗口小部件创建一个新的QGraphicsProxyWidget,将其添加到场景中,并返回指向代理的指针. 由于…
这个类用来做自己的组件很不错,比如下面这个图的路径点,他其实是个Empty Object,可以自己加脚本让他带上标记.官方解释还可以用来做帮助提示的-.- 大游戏场景的制作时候,你可以用这个在地图上写下注释. 属性:color 画得颜色matrix 设置矩阵,用于画所有Gizmos (具体用法未知)方法:DrawRay画射线DrawLine画直线DrawWireSphere画线框球DrawSphere画实心球DrawWireCube画线框方体DrawCube画实体方体.DrawIcon画一个图标…
起因 这是知识星球内的一个网友提出的,按理说ASP.NET MVC中一个视图只能绑定一个模型(Model),在视图顶部标识如下: @model IEnumerable<FineUICore.Examples.Areas.DataModel.Models.Student> 视图中可以表格列可以使用RenderFieldFor来绑定: @(F.Grid().IsFluid(true).CssClass("blockpanel").Title("表格").Sh…
分类:Unity.C#.VS2015 创建日期:2016-03-29 一.场景视图(Scene View)导航 场景视图 (Scene View) 是你的交互式沙箱.你可以使用场景视图 (Scene View) 选择和放置环境.玩家.相机.敌人和所有其他游戏对象 (GameObjects). 在场景视图 (Scene View) 中调动和操纵对象是 Unity 最重要的一些功能,因此,能够迅速使用它们至关重要. 场景视图 (Scene View) 有一个导航控件集,可帮助你快速高效地四处移动.…
老猿Python博文目录 老猿Python博客地址 在<PyQt(Python+Qt)学习随笔:QAbstractItemView的dragEnabled和dragDropMode属性的关系>介绍了视图中dragDropMode属性对dragEnabled属性的影响,实际上除了dragDropMode属性对dragEnabled属性有影响之外,对acceptDrops属性也有类似的影响. 经老猿验证测试如下场景: 当dragDropMode设置为DragOnly.DragDrop.Intern…
导读 相比于Qt Creator,我更喜欢用VS2010来进行开发.虽然启动时间相对较慢,但是VS下强大的快捷键和丰富的插件,以及使用多年的经验,都让我觉得在开发过程中得心应手.其中最重要的一点是,有时候Qt Creator报的错误莫名其妙.要根据提示找到错误根源显得无从下手.而VS的一般错误说明都比较人性化,即便在某些时候无从解决,也可以通过搜索引擎大致定位出错误的源头.下面是在调试网上的一些源代码的时候,积累下来的一点经验,记下来一来备忘,二来也可供后来人参考. The system can…
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 QListView理论上可以和所有QAbstractItemModel派生的类如QStringListModel.QDirModel.QFileSystemModel.QStandardItemModel等对接,但QListView实际上能展示的数据仅一列,对于复杂的树形层次使用Model使用QListView来展现意义不大.本节通过几个简单代码案例来阐述QListView/Model开…
老猿Python博文目录 老猿Python博客地址 一.概述 在PyQt图形界面中,支持采用Model/View架构实现数据和界面逻辑分离,其中Model用于处理数据存储,View用于界面数据展现,当Model中的数据变化后对应界面视图自动更新,反之当View中数据进行修改之后,也支持通知Model进行数据调整. 为了快速支持Model/View架构,PyQt提供了一系列类来支持,在Qt Designer中Item Views部件栏的视图部件都是用于Model/View架构的View部件,涉及相…
老猿Python博文目录 老猿Python博客地址 在通过PyQt构建的图形界面中进行拖放,要成功进行拖放需要注意: 视图相关属性需要支持拖放,具体相关属性请参考<PyQt(Python+Qt)学习随笔:QAbstractItemView的dragEnabled属性的困惑>和<PyQt(Python+Qt)学习随笔: QAbstractItemView的dragDropMode属性> 老猿使用TableView和ListView验证,视图中提供的拖放动作是通过鼠标左键按下触发,但当…
一.图形视图框架的结构 在前面讲的基本绘图中,我们可以自己绘制各种图形,并且控制它们.但是,如果需要同时绘制很多个相同或不同的图形,并且要控制它们的移动.检测它们的碰撞和叠加:或者我们想让自己绘制的图形可以拖动位置.进行缩放和旋转等操作.实现这些功能,要是还使用以前的方法,那么会十分困难.解决这些问题,可以使用Qt提供的图形视图框架. 图形视图(Graphics View)框架结构的主要特点如下: 图形视图(Graphics View)可以对大量定制的2D图形项进行管理和相互作用.视图部件可以让…
ActiveQt Examples Using ActiveX from Qt applications. Animation Framework Examples Doing animations with Qt. Animated Tiles…
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 树部件(Tree Widget)是Qt Designer中 Item Widgets(Item-Based)部件中提供的一个Model/View便利部件,对应类为QTreeWidget类. QTreeWidget类从QTreeView派生(继承关系请参考<PyQt学习随笔:Qt中Model/View相关的主要类及继承关系>),是一个Model/View便利类,提供一个树状管理数据的界面…
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 列表部件(List Widget)对应类QListWidget,是从QListView派生的类,用于显示一些数据的列表,不支持多层级数据的显示.QListWidget显示的数据项都通过QListWidgetItem构建. QListWidget是一个便利类,它提供了一个类似于QListView提供的列表视图,具有一个用于添加和删除项的接口.QListWidget使用一个内部模型来管理列表…
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 在Designer的部件栏Item Views中提供了PyQt和Qt已经实现好的table View(表视图)部件,table View对应的类为QTableView,QTableView类提供表视图的默认Model/View实现.这儿的所说的表视图老猿理解为类似通过行和列定位数据的表格形式的数据展现方式. QTableView是PyQt和Qt提供的一种表视图的实现,用于显示存储在Mod…
Qt中MVC的M(Model)简单介绍 Qt有自己的MVC框架,分别是model(模型).view(视图).delegate(委托),这篇文章,简单的介绍以下Qt中有关model(模型)的类以及一些基本的使用. Qt官方的文档已经很详细了,如果想要详细的去了解,建议花点精力去看官方文档. @ 目录 Qt中MVC的M(Model)简单介绍 类继承的结构 QStringListModel QAbstractProxyModel QSortFilterProxyModel QTransposeProx…
转载1:http://qimo601.iteye.com/blog/1404693 转载2:http://blog.sina.com.cn/s/blog_92cde3060101lobm.html 转载3:http://www.devbean.net/2012/08/qt-study-road-2-resource-files/ 刚开始自学QT,好多东西不是很明白,从网上搜出来一些资料,先记录下来,以方便以后学习.习惯了使用VS进行写项目,所以选择下载Qt5.2.Qt插件,在给窗口和控件添加背景…
在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么? 例如:  //! [0] GLWidget :: GLWidget(Helper * helper,QWidget * parent):QGLWidget(QGLFormat(QGL :: SampleBuffers),parent),helper(helper) { elapsed = 0; setFixedSize(840,400); setAutoFillBackground(false); } //! [0] //!…
QT5中已经增加了串口类QSrialPort,可以直接调用API函数进行快速开发. 1. 获取串口信息 Dialog::Dialog(QWidget *parent) : QDialog(parent) { const auto infos = QSerialPortInfo::availablePorts(); for (const QSerialPortInfo &info : infos) serialPortComboBox->addItem(info.portName()); }…
[Qt开发]关于Qt应用程序中的堆栈.静态存储区的使用错误 标签:[Qt开发] 最近终于又碰到了这个问题,想在main函数中定义一个局部大的数组,结果运行就报错,尼玛!刚开始真的不知道到发生了什么,后来一步一步的试,锁定在这个大的数组上.在主函数里定义的局部变量应该是在栈区保存的,难道是Qt默认的栈不够所致. 后来改为new或者malloc,也就是从堆里面申请内存,程序就没问题,或者是定义全局变量应该是放在了全局静态存储区,都是可以的,不报错! 所以牢记这一点!! 下面还是经典的经典内存分布说明…
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 表格部件为应用程序提供标准的表格显示工具,在表格内可以管理基于行和列的数据项,表格中的最大数据项数为总行数和总列数的乘积,另外在表格中可以设置水平和垂直标题. 表格部件对应类为QTableWidget ,QTableWidget 表格部件中的项类型为QTableWidgetItem类.QTableWidget 从QTableView派生的子类,内置默认模型,如果表格展现的应用需要使用自己…
autoFillBackground属性可以确认部件背景是否自动填充,如果自动填充,Qt会在调用Paint事件之前填充部件的背景.使用的颜色由部件调色板中的QPalette.window 角色定义(关于调色板请参考<PyQt(Python+Qt)学习随笔:Qt Designer中部件的调色板palette属性和字体font属性设置>). 此外,除非设置了WA_OpaquePaintEvent 或 WA_NoSystemBackground属性,否则窗口始终使用QPalette.Window对应…
accessibleDescription和accessibleName属性都是用于残疾人辅助阅读的,这两个属性都有国际化属性(关于国际化请参考<PyQt(Python+Qt)学习随笔:Qt Designer中部件与国际化有关的设置translatable. disambiguation和comment含义>),这2个属性都必须进行本地化语言处理. accessibleName 这是辅助阅读中显示的部件的名称,对于大多数小部件,无需设置此属性,因为Qt会调用部件相关属性显示,如按钮将显示按钮的…
toolTip属性 toolTip属性设置部件的toolTip提示信息,toolTip提示信息在鼠标放到控件上会浮动出一个小框显示提示信息.默认情况下,仅显示活动窗口子部件的toolTip,可以通过在窗口对象设置Qt.WA_AlwaysShowToolTips属性来改变,但不能是需要显示tooTip的部件对象中设置. 如果要控制tooTip显示的行为(如控制显示位置),可以重写部件的event()方法捕获事件类型为QEvent.ToolTip的事件. 缺省值为空,可以通过toolTip()和se…
windowFilePath属性仅对窗口对象有效,用于关联一个窗口和对应的文件及路径. 当窗口没有设置标题属性的情况下,则窗口标题展示展示windowFilePath对应的文件名的信息(路径信息不展示),如果二者都设置,则优先使用窗口标题属性的设置作为标题. 该属性缺省为空,可以通过windowFilePath()和setWindowFilePath(QString )来访问和设置windowFilePath属性. 这个功能在窗口打开文件进行操作时可以使用来标记打开的文件. 注意该属性有国际化设…
shortcut 属性保存与按钮关联的快捷键.可以使用shortcut()和setShortcut(QKeySequence)访问和设置该属性. 关于这个属性官网介绍的不多,经老猿实际验证,它与text属性通过'&'符号设置的快捷键(请参考<PyQt(Python+Qt)学习随笔:Qt Designer中QAbstractButton派生按钮部件的text属性>)有如下区别: 1.在该属性设置的情况下,text属性的快捷键不起作用: 2.text属性的快捷键只支持一个字符,而这个可以设…
icon属性 icon属性保存按钮上展示的图标,图标的缺省大小由图形界面的样式决定,但可以通过 iconSize 属性进行调整. 图标的几种子属性状态的含义与QWidget的windowIcon属性相同,可以参考<PyQt(Python+Qt)学习随笔:Qt Designer中部件的windowIcon属性>的介绍. 通过icon()可以访问icon属性的值,通过setIcon( QIcon )设置icon属性的值. iconSize属性 iconSize属性保存按钮图标的大小,这个大小是图标…
在两种Spacer部件中都有sizeHint属性,在<PyQt(Python+Qt)学习随笔:Qt Designer中部件的三个属性sizeHint缺省尺寸.minimumSizeHint建议最小尺寸和minimumSize最小尺寸>中我们说sizeHint为布局管理器中部件的缺省大小,该值是Qt中对每个部件大小的建议值,也是缺省值,不能修改,但在Spacer部件中是可以修改的,这是因为Spacer部件不是从QWidget类派生的部件,这里的sizeHint也并不简单是缺省大小,是可以指定的.…