问题标签 [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.
python - 最小化 QTreeWidgetItem 中 QTextEdit 的大小
我有一个 QTreeWidget 填充了一些 itemwidgets,其主要小部件将是一个 QTextEdit。我遇到的问题似乎是将尺寸缩小到可以管理的程度。将大小策略设置为最大值的常用方法似乎不起作用。这是示例代码:
请注意,无论文本的长度如何,似乎对文本编辑的高度都没有任何影响。QTextEdit 如何将自身(至少垂直)缩放到尽可能小的尺寸,并且为了知识,为什么它不像许多其他小部件那样以这种方式表现?提前致谢!
编辑:我现在应该注意到,我试图通过使用 QLabel(它在调整大小、显示和文字扭曲方面,就像我想要的那样工作)来欺骗这种效果,并将文本交互标志设置为可编辑。如果有办法访问标签的编辑文本,这几乎是可行的。不幸的是,标签上的任何 .text() 调用都会产生原始文本。QLineEdit 不能是多行或自动换行,QTextEdit 似乎过于复杂。
现在的问题是,什么是创建小(300 个字符或更少)文本显示小部件的最佳小部件,它也可以编辑?
qt - 无法为“QModelIndex”获取“QWidget* 编辑器”
我无法增加QTableView
. 当按下 Enter 键时,我想要以下行为:
- 如果尚未编辑当前单元格,则开始编辑当前单元格。
- 如果正在编辑单元格,
- 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::closeEditor
QWidget *editor
QAbstractItemDelegate
getEditor()
CourseTable::setItemDelegate*()
那么,有什么想法可以在不重写代码的情况下干净地完成 1 和 2 吗?
wpf - 对象更新后通知 PropertyChanged
我希望以一种优雅的方式更新我的列表视图。
这是我的代码:
我如何强制更新 ObservableCollection 中的对象绑定?
这是我的 userControl.xaml
qt - Qt - 如何将 QListView 项目转移到另一个 QListView?
我有一个QLineEdit、两个 QPush 按钮(添加和删除按钮)和一个QListView。单击添加按钮时,我在QLineEdit 中输入的文本将添加到QListView中。如果我从 QListView 中选择任何一个项目并单击删除按钮,则所选项目将被删除。我完成了这些事情,它工作正常。现在我想添加另一个 QListView,如果双击 QListView 项目(QListView 1),项目应该被转移(QListView 1 中的项目应该完全删除)到新的 QListView(QListView 2),反之亦然。请帮我提出你的建议。提前致谢。
qt - 如何在 TableView 中设置不同的 QLineEdit 文本
我有 3 个QLineEdits
(比如姓名、地址和电话号码)、一个QPushButton
(添加按钮)和一个QTableView
.
当我在QLineEdits
所有.QLineEdits
QTableView
我怎样才能做到这一点?
qt - Qt - 如何从 QTableView 中删除选定的行并将其复制到 QLineEdit
我有 3 个QLineEdit
(比如姓名、地址和电话号码)、2 个QPushButton
(添加和修改)和一个QTableView
.
当我在所有QLineEdit
s 中输入文本时,如果单击 Add 按钮,则QLineEdit
s 的所有 3 个文本都应添加到QTableView
.
同样,如果我在 中输入 3 个文本QLineEdit
并单击添加按钮,则文本应放置在QTableView
. 像这样应该继续下去。我做了这一切,它工作正常。
现在,如果我从中选择任何行,QTableView
并且一旦单击修改按钮,则必须从 中删除所选行,QTableView
并且项目应再次放置在它们各自QLineEdit
的 s 中。
我怎样才能做到这一点 ?
例子.h
示例.CPP
wpf - 如果复选框是从数据动态创建的,如何分配和访问 WPF 复选框的 Name 属性?
我有一个 TreeView,并且使用 HierarchicalDataTemplates 的 TreeView 有多个层。每个 TreeViewItem 当前都显示它所代表的对象的“名称”。我现在需要将 CheckBoxes 添加到我已经想通的树的子级中,但是我还没有想出在选中复选框时访问复选框的名称。
更具体地说,我需要选中的复选框的名称,因为我需要相应地对某些数据应用过滤器。当检查 CheckBox 和 TreeViewItem 的对象的名称是否是从数据动态创建时,如何访问每个 CheckBox 的名称?
c - 正确计算 OpenGL 使用的模型和视图矩阵?
我在 GL 3.2 中遇到了一些矩阵问题。我如何(最好以矩阵表示法)生成模型和视图矩阵?如何设置我的模型/视图矩阵?我已经有一个投影矩阵;它被定义为:
我知道这个正交矩阵必须乘以模型和视图矩阵,并且必须乘以点。如何设置这些矩阵?
编辑:我不介意它们是否连接成一个(模型视图)。
c - 旋转矩阵缩小对象?
我的数学错了吗?用户应该能够输入以度为单位的角度,并分别旋转矩阵。相反,它缩小对象并翻转它......调用
(模型视图是一个单位矩阵)产生:
常规:http: //i.imgur.com/eX7Td.png
旋转:http: //i.imgur.com/YnMEn.png
这是glmxRotate:
另外,如果一个平移矩阵是用最后四列中的平移定义的,那么如何平移一个单位矩阵,因为结果总是会产生 0?
c# - 是否存在生成具有 MVVM 模式的表示级别的代码生成器?
是否存在使用模型视图视图模型模式生成表示级别的代码生成器?我需要一个生成器,它将为widnows桌面或WPF应用程序生成具有表示级别的代码,所有这些代码都使用MVVM模式(来自数据库或对象模型)进行数据绑定
存在这样的东西吗?