首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >.NET数据绑定的Qt等价物?

.NET数据绑定的Qt等价物?
EN

Stack Overflow用户
提问于 2009-11-09 23:22:26
回答 3查看 9.6K关注 0票数 22

Qt中有没有.NET数据绑定的等价物?

我想用引用数据库中特定实体的QStrings填充一些组合框和其他小部件。但是,如果我可以将数据绑定到这些字符串,而不是基于新的组合框选择再次查询数据库,或者基于构建我自己的实体索引(将使用QStrings进行搜索)的某种其他方案,将会更加简洁。

我想出的最好办法是从QString派生这些实体,并以这种方式将它们推送到小部件中,但我还没有真正尝试过。我不确定它是否会以我想要的方式工作,而且它看起来像是一个讨厌的黑客。

如果没有数据绑定,您有什么建议?

谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-11-09 23:53:14

嗯,特别是combobox,你可以设置一个模型。对于QObjects,通常可以使用notify信号表示要连接的属性,也可以使用其他与属性无关的信号。我想还有另一种方法,但我想不起来了。

票数 3
EN

Stack Overflow用户

发布于 2015-02-20 16:01:04

正如评论中提到的用户无动于衷,您可以使用QDataWidgetMapper类。这是将任意小部件绑定到存储在QAbstractItemModel中的数据的一种非常简单的方法。

链接页面上的示例用几行代码展示了如何将数据模型链接到常用的输入小部件:

代码语言:javascript
复制
QDataWidgetMapper *mapper = new QDataWidgetMapper;
mapper->setModel(model);
mapper->addMapping(mySpinBox, 0);
mapper->addMapping(myLineEdit, 1);
mapper->addMapping(myCountryChooser, 2);
mapper->toFirst();
票数 8
EN

Stack Overflow用户

发布于 2009-11-10 02:10:03

一种方法是使用Qt模型/视图类(以QAbstractItemModel为基础),但它们需要你的小部件继承QAbstractItemView (这是像QTableView等小部件)。

如果您希望将Qt模型映射到一组小部件,这与QAbstractItemView没有什么共同之处,您可以使用QDataWidgetMapper,它将单独的小部件映射到Qt模型/视图索引。但不管怎样,正如Aaron Digulla所说,你必须写一些样板代码...

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1701706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档