问题标签 [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.

0 投票
2 回答
2092 浏览

python - 最小化 QTreeWidgetItem 中 QTextEdit 的大小

我有一个 QTreeWidget 填充了一些 itemwidgets,其主要小部件将是一个 QTextEdit。我遇到的问题似乎是将尺寸缩小到可以管理的程度。将大小策略设置为最大值的常用方法似乎不起作用。这是示例代码:

请注意,无论文本的长度如何,似乎对文本编辑的高度都没有任何影响。QTextEdit 如何将自身(至少垂直)缩放到尽可能小的尺寸,并且为了知识,为什么它不像许多其他小部件那样以这种方式表现?提前致谢!

编辑:我现在应该注意到,我试图通过使用 QLabel(它在调整大小、显示和文字扭曲方面,就像我想要的那样工作)来欺骗这种效果,并将文本交互标志设置为可编辑。如果有办法访问标签的编辑文本,这几乎是可行的。不幸的是,标签上的任何 .text() 调用都会产生原始文本。QLineEdit 不能是多行或自动换行,QTextEdit 似乎过于复杂。

现在的问题是,什么是创建小(300 个字符或更少)文本显示小部件的最佳小部件,它也可以编辑?

0 投票
1 回答
461 浏览

qt - 无法为“QModelIndex”获取“QWidget* 编辑器”

我无法增加QTableView. 当按下 Enter 键时,我想要以下行为:

  1. 如果尚未编辑当前单元格,则开始编辑当前单元格。
  2. 如果正在编辑单元格,
    • 2a。提交数据并关闭编辑器。然后,
    • 2b。使下面的单元格(如果存在)成为当前单元格。

2a 是默认行为,而 2b 很可能通过QAbstractItemView::setCurrentIndex()在重新实现中使用来实现(如此处在类似上下文QItemDelegate::eventFilter()中建议的那样)。

问题在于实现1。我在下面列出了我迄今为止尝试过的方法。

  • 重新配置“平台编辑键”默认情况下,“当平台编辑键在项目上按下时开始编辑。” ( QAbstractItemView::EditKeyPressed) 这个键在我的平台(Ubuntu 12.04)上是 F2。我可以将平台编辑键重新配置为 Enter 但是
    • 更改平台默认设置似乎是个坏主意。
    • 我不知道该怎么做。
  • 捕获我用来执行此操作的 Enter 键QShortCut,如下所示:

    这确实捕获了 Enter 按键并完成 1(从上方),但现在 2 已损坏。所以,我需要查看上面的else子句,CourseTable::handleEnter_()可能会调用它。问题是这两个函数都需要一个我无法弄清楚如何获得的参数。我可以子类化,向派生类添加方法,并修改现有代码以将派生委托类的实例传递给函数。但这听起来工作量太大了。QAbstractItemView::commitData()QAbstractItemView::closeEditorQWidget *editorQAbstractItemDelegategetEditor()CourseTable::setItemDelegate*()

那么,有什么想法可以在不重写代码的情况下干净地完成 1 和 2 吗?

0 投票
2 回答
3250 浏览

wpf - 对象更新后通知 PropertyChanged

我希望以一种优雅的方式更新我的列表视图。

这是我的代码:

我如何强制更新 ObservableCollection 中的对象绑定?

这是我的 userControl.xaml

0 投票
2 回答
1556 浏览

qt - Qt - 如何将 QListView 项目转移到另一个 QListView?

我有一个QLineEdit两个 QPush 按钮(添加和删除按钮)和一个QListView单击添加按钮时,我在QLineEdit 中输入的文本将添加QListView中。如果我从 QListView 中选择任何一个项目并单击删除按钮,则所选项目将被删除。我完成了这些事情,它工作正常。现在我想添加另一个 QListView,如果双击 QListView 项目(QListView 1),项目应该被转移(QListView 1 中的项目应该完全删除)到新的 QListView(QListView 2),反之亦然。请帮我提出你的建议。提前致谢。

0 投票
1 回答
1519 浏览

qt - 如何在 TableView 中设置不同的 QLineEdit 文本

我有 3 个QLineEdits(比如姓名、地址和电话号码)、一个QPushButton(添加按钮)和一个QTableView.

当我在QLineEdits所有.QLineEditsQTableView

我怎样才能做到这一点?

0 投票
1 回答
4669 浏览

qt - Qt - 如何从 QTableView 中删除选定的行并将其复制到 QLineEdit

我有 3 个QLineEdit(比如姓名、地址和电话号码)、2 个QPushButton(添加和修改)和一个QTableView.

当我在所有QLineEdits 中输入文本时,如果单击 Add 按钮,则QLineEdits 的所有 3 个文本都应添加到QTableView.
同样,如果我在 中输入 3 个文本QLineEdit并单击添加按钮,则文本应放置在QTableView. 像这样应该继续下去。我做了这一切,它工作正常。

现在,如果我从中选择任何行,QTableView并且一旦单击修改按钮,则必须从 中删除所选行,QTableView并且项目应再次放置在它们各自QLineEdit的 s 中。

我怎样才能做到这一点 ?

例子.h

示例.CPP

0 投票
1 回答
289 浏览

wpf - 如果复选框是从数据动态创建的,如何分配和访问 WPF 复选框的 Name 属性?

我有一个 TreeView,并且使用 HierarchicalDataTemplates 的 TreeView 有多个层。每个 TreeViewItem 当前都显示它所代表的对象的“名称”。我现在需要将 CheckBoxes 添加到我已经想通的树的子级中,但是我还没有想出在选中复选框时访问复选框的名称。

更具体地说,我需要选中的复选框的名称,因为我需要相应地对某些数据应用过滤器。当检查 CheckBox 和 TreeViewItem 的对象的名称是否是从数据动态创建时,如何访问每个 CheckBox 的名称?

0 投票
2 回答
906 浏览

c - 正确计算 OpenGL 使用的模型和视图矩阵?

我在 GL 3.2 中遇到了一些矩阵问题。我如何(最好以矩阵表示法)生成模型和视图矩阵?如何设置我的模型/视图矩阵?我已经有一个投影矩阵;它被定义为:

我知道这个正交矩阵必须乘以模型和视图矩阵,并且必须乘以点。如何设置这些矩阵?

编辑:我不介意它们是否连接成一个(模型视图)。

0 投票
2 回答
657 浏览

c - 旋转矩阵缩小对象?

我的数学错了吗?用户应该能够输入以度为单位的角度,并分别旋转矩阵。相反,它缩小对象并翻转它......调用

(模型视图是一个单位矩阵)产生:

常规:http: //i.imgur.com/eX7Td.png

旋转:http: //i.imgur.com/YnMEn.png

这是glmxRotate:

另外,如果一个平移矩阵是用最后四列中的平移定义的,那么如何平移一个单位矩阵,因为结果总是会产生 0?

0 投票
1 回答
401 浏览

c# - 是否存在生成具有 MVVM 模式的表示级别的代码生成器?

是否存在使用模型视图视图模型模式生成表示级别的代码生成器?我需要一个生成器,它将为widnows桌面或WPF应用程序生成具有表示级别的代码,所有这些代码都使用MVVM模式(来自数据库或对象模型)进行数据绑定

存在这样的东西吗?