如何限制在 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 设计器中创建的编辑框中的数字的主要内容,如果未能解决你的问题,请参考以下文章

如何将数据框中的值分配给在另一个数据框中创建的十分位数?

如何防止VS WPF设计器在工具箱中的每个对象上放置边距

ReportMachine报表设计器

vs2022窗体设计器在哪

如何解决 VS2010 Windows 窗体设计器问题(无法加载基类)

在vs2019中如何创建windows窗体中的form