问题标签 [model-view]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - 无法选择 QAbstractItemView 项目,当它被禁用时
当我将 QAbstractItemModel 的标志设置为可选择但未启用时,我无法通过鼠标单击来选择项目。但是在内部 select() 函数选择对象。这是 qt 错误,还是我做错了什么?
c++ - 在树视图中滚动时,Qt QAbstractItemModel 很慢
我做了一个没有任何数据的简单模型,只显示一些文本。如果数据返回一个字符串,它就可以了。如果我将其更改为返回QString("%1").arg(index.row());
,则在我的树视图中滚动时它开始变慢。
c++ - 如何在 Qt 中制作一个恒定正确的只读模型/视图架构?
QTableView
假设我想使用和QAbstractTableModel
类来实现模型/视图架构。所以我子类化QAbstractTableModel
来创建类MyModel
并实现QAbstractTableModel
接口。QTableView
然后使用该方法将这个模型的实例连接到一个实例setModel
。
但是我怎样才能使模型只读呢?我不能声明
因为 setModel 需要一个非常量的参数。我只重新实现了 QAbstractTableModel 的常量方法。
asp.net-mvc-3 - 在 ASP MVC 3 中跨视图使用相同的模型视图实例
我有两个视图:第一个有一个表单,当它提交时,它会填写一个模型视图(QuizzModelView)。
现在提交后,我被重定向到另一个视图,该视图也有一个我要提交的表单。问题是我想对两个视图使用相同的 QuizzModelView。这意味着,在提交第二个表单时,我还想提交前一个表单的值。我可以通过创建隐藏输入来做到这一点,这些输入采用来自第一个视图的值。
有没有办法在没有隐藏输入的情况下做到这一点。
谢谢
编辑:解释更多:
我的模型视图包含:QuizzModelView.field1、QuizzModelView、.field2
第一步:View1 将填写 QuizzModelView.field1
第二步:我被重定向到 view2
第三步:View2 将填写 QuizzModelView.field2
现在我希望能够得到 QuizzModelView.field1 和 QuizzModelView.field2。但我只得到 QuizzModelView.field2 因为提交 View2 时 QuizzModelView.field1 丢失
这是我的行动:
javascript - 使用 HTML5 画布元素和 Javascript 加载 3D 模型
我有一个简单的概念,我想使用 HTML5,但是当谈到用 Javascript 编写的画布和模型查看器时,我完全是新手。我有一个台灯的 3D 模型,我希望只有台灯的头部可以随着鼠标移动而旋转。这个CSS3 盒子阴影效果有点像我的意思,但我已经在 Maya 中绘制了 3D 模型,我想用 HTML5 加载并使用 Javascript 进行光标交互。我只需要灯头部分保留3D属性,底座可以使用png。我希望这是有道理的,我通常只使用 Flash,但如果可能的话,我想用 HTML5 来做。
javascript - 主干视图监听模型事件
我在主干视图模型通信方面遇到问题,视图应该监听来自模型的事件,所以功能 couponReader 应该从模型中获取数据并在某种确认后添加到购物车。任何帮助表示赞赏
模型类:它循环监听服务器,每当加载数据时从服务器获取数据。
c++ - 自定义 QAbstractItemModel 和 QTableView 中的选择损坏
我正在研究一个QTableView
延迟加载的控件。
我有成千上万的记录必须显示,当我使用简单的QListWidget
方法时,它曾经严重滞后。
现在我通过以下data
方法使用 QAbstractItemModel:
生成的表格视图效果很好:它快速而流畅。
但是有一个主要问题:选择完全被破坏了。
当我选择一个项目/项目时,它们不会立即以蓝色突出显示,我需要滚动表格以便它重新绘制并显示蓝色背景。(我使用的是 Windows 7。)
选择项目时我也看不到虚线矩形。
我查了一下,表格视图的选择模型不为空。我还查看了 Qt 中的其他一些模型实现,它们具有类似的数据方法,但它们没有选择问题。
我也尝试从QAbstractTableItem
and子类化QAbstractListItem
,什么都没有。
在这里感谢您的帮助。
pyqt4 - PyQt4.9.1 视图从不调用model.data
我试图弄清楚如何使用 PyQt4.9.1 中的模型和视图,但我遇到了一些问题。
这是重要的代码:
以下是我启动应用程序的 MainWindow 时发生的情况:没有错误消息,表格的绘制行数和列数以及正确的标题,但表格是空的。您可能会注意到模型的 draw 方法以 print 语句开始。该声明从未达到。有什么我想念的吗?我根本找不到 PyQt4.9.1 的任何教程。
qt - 使用嵌套对象集合开始 Qt 模型/视图
我主要是一名 .Net 开发人员,并且已经研究 Qt 有一段时间了。我现在正处于尝试在 Qt 中实现模型/视图框架的阶段。我想我掌握了基本原理,但不清楚如何在一个更复杂的 UI 中将东西挂在一起,小部件需要相互通信。鉴于以下情况:
UI 的基本前提在感觉上类似于 Visual Studio。树类似于解决方案资源管理器,“信息显示”类似于属性窗口。
这就是你使用模型/视图框架的方式吗?对于那些熟悉 WPF/Silverlight 开发的人来说,模型/视图框架是否类似于 MVVM(在高层次上),因为它是“视图模型”并包装/包含域模型?
这是您使用模型/视图框架连接小部件的方式吗(即,一个小部件将模型的指针或引用传递给另一个小部件)?还是我应该使用 SelectionModel?由于树模型包含不同类型的对象,这是否有效?
如何识别根节点?例如,当创建 MyNestedObject1 并需要将其添加到树时,我是否依赖于根节点位于模型索引 QModelIndex(0, 0) 的知识(即第 0 行,父索引无效)?
c++ - 如何在保留选择的同时刷新 QSqlTableModel?
我正在使用QSqlTableModel
andQTableView
来查看 SQLite 数据库表。
我想让表每秒左右自动刷新一次(它不会是一个非常大的表 - 几百行)。我可以这样做 - 像这样:
但这会删除我拥有的任何选择,因此选择最多只能持续一秒钟。这很烦人,因为 GUI 中的另一个窗格取决于选择的内容。如果未选择任何内容,则它会重置为说明启动页面。
然后我尝试了一种有点 hacky 的方法,它获取选定的行号,重置表,然后选择该行。但这也不起作用,因为选定的行可以根据对表格的添加向上或向下移动。
我知道其他班级有dataChanged()
信号,这将是理想的。
你们有谁知道我如何让表刷新以反映对数据库的更改(来自命令行使用或程序的其他实例)并保持当前选择?
我知道我可以从当前选择中获取数据,然后在重置后搜索同一行,然后重新选择它,但这似乎是一个适得其反的问题解决方案。
编辑:目前的解决方案尝试:
好的,所以这或多或少现在有效......