c++ - 使用 XML 模式类型的 Qt GUI 输入验证

标签 c++ qt user-interface xsd validation

我们正在开发一个跨平台,它应该提供一个 Qt GUI 来写入 XML 文件。将有一组可配置的 XML 元素/属性,可以使用 QLineEdit 等在 Qt GUI 中进行修改。

我们如何添加符合 XML 模式中定义的类型的输入验证?这些类型都是 simpleType,例如:

<xs:element name="age">
  <xs:simpleType>
    <xs:restriction base="xs:integer">
      <xs:minInclusive value="0"/>
      <xs:maxInclusive value="100"/>
    </xs:restriction>
  </xs:simpleType>
</xs:element>

如果没有为所有 xml 模式类型重新实现输入验证,是否还有其他可行的方法。我有为当前可见的输入字段及其输入创建 XML 模式和 XML 文档的想法,使用 QXmlSchema 验证它然后显示验证错误消息。然而,这似乎过于复杂并且可能很慢。

最佳答案

Here是 XML 模式验证器的一个很好的例子。在示例中,架构使用 QPushButton 进行验证,但您可以在完成编辑或更改文本后执行此操作。

关于c++ - 使用 XML 模式类型的 Qt GUI 输入验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8940761/

相关文章:

c++ - C++ 中的未定义行为

c++ - 在球员评分程序中显示低于平均分数

java - 当我更改 SWT 中按钮的文本时,整个按钮的大小会发生变化。我怎样才能禁用这个功能?

c++ - 屏幕阅读器无法访问 wxWidgets 中的 wxGrid

jQuery UI 对话框,打开对话框后如何更改文本

V8 中的 Javascript 等价物?

android - 为 Android 上的 MediaStreamer2 控制台应用程序提供 JVM

linux - 在 QProcess 输出中保留 ANSI 转义序列

c++ - 使用 QVector 的内存泄漏

c++ - 在Qt5应用程序上读取CSV文件时出现无限循环