如何限制在 VS 设计器中创建的编辑框中的数字
Posted
技术标签:
【中文标题】如何限制在 VS 设计器中创建的编辑框中的数字【英文标题】:How to limit numbers in edit box created in VS designer 【发布时间】:2019-06-18 16:18:24 【问题描述】:我在 Visual Studio 中有一个项目。我在设计器视图中创建了一个对话框,它会在 .rc 文件中生成一堆 ID 和属性。其中一个控件是设置了 ES_NUMBER 的编辑框。
如何设置最小值和最大值?我看到的所有答案都是针对以编程方式创建的控件,其中一个是 CEdit 的子类。使用 .rc 时甚至可以生成子类编辑控件吗?
【问题讨论】:
winapi是纯c语言,这里c++标签无关。 与scanf
类似的问题 - 您只能在输入范围后检查范围,尽管可以逐位检查。不过,这可能会给用户带来麻烦,在使用退格等和编辑内容时,禁止使用不完整的值。
“子类”这个词似乎与 C++ 相关。
@user3007190 似乎,但实际上并非如此。 “子类化” Windows 控件不同于并且绝不需要“子类化” C++ 类或以任何方式使用 C++。它们在概念上的相似程度取决于您现在的头是如何拧紧的,以及您从什么角度和距离观看事物。
参见 MSDN 上的 Subclassing Controls。
【参考方案1】:
使用自动好友Up-Down control。
【讨论】:
AFAIK 这只会限制上下控制的最小/最大值,但不会影响手动输入的数字。 @zett42 这可能是真的,但我猜如果你从 up-down 控件中检索值,它将在限制范围内。以上是关于如何限制在 VS 设计器中创建的编辑框中的数字的主要内容,如果未能解决你的问题,请参考以下文章