qt - 我如何检索小部件中所有文本编辑框内容的更改
问题描述
现在,我有一个用于配置一些参数的小部件,有一些QlineEdit
具有默认值和save
这个小部件上的按钮。人们可能会更改QlineEdit
. 并点击save
按钮,使修改后的参数生效。这是我的问题:
如何检索此中所有文本行编辑内容的更改QWidget
?
一旦知道了哪些编辑内容发生了变化,就可以判断修改后的值是否合法,然后让修改生效。
谁能给我一些想法?
- 操作系统:Windows10
- qt:qt 5.9.0
解决方案
对于这种情况,最好在手动验证用户输入之前多做一步。该步骤是限制用户输入无效设置。如果您的设置值是数字,请使用QSpinBox或QDoubleSpinBox作为浮点值。如果您想让用户从多个预定义的值中进行选择,例如性别(男性、女性),请使用QComboBox或QRadioButton等。这是Qt 的小部件列表。所以请记住,对所有输入使用 QLineEdit 并不是一个好主意。
如果您的输入更复杂,您可以使用验证器。为了得到这个想法,请参阅这个问题。
最后,使用 Qt 的信号和槽机制将保存按钮的单击信号连接到小部件类中定义的槽,并从所有输入中获取值并检查它们,如果一切正常,将它们应用到您的系统。
推荐阅读
- swift - 如何调用本机方法并将回调作为参数传递?
- asp.net - 获取 ASPX 链接以继承浏览器当前的 HTTP 方法(HTTP VS HTTPS
- c# - 如何使用 Open XML SDK 以 (-123) 格式显示设置的单元格值?
- node.js - 无法从 vue.js 发送 api 请求来表达
- svelte - 预取预渲染路由
- charts - 可以为 y 轴值添加后缀(谷歌图表)?
- python - Pyside2 QDialog 背景图形
- java - 如果我想用 shiro 在服务层进行登录,它怎么设置 cookie?
- karate - 有没有办法检查我有什么版本的空手道?
- javascript - 更改已附加的 textarea 中文本的颜色