删除可以输入Win32 Edit控件的字符数限制

时间:2016-02-27 12:21:37

标签: c++ winapi editcontrol character-limit

我到处搜索过,似乎无法找到解决这个问题的方法..

我的问题不是限制可以输入编辑控件的字符数量,我的问题是我受编辑控件的大小限制。我希望能够输入超过编辑控件的大小。

我已尝试使用SendMessage将字符数限制扩展为高数字并发送EM_LIMITTEXT,但这似乎只有在我想限制它时才有效。

以下是我的问题的图片示例:

My problem

我使用CreateWindowEx来创建编辑控件,但它似乎不是一个扩展的窗口样式或一个实现我想要的编辑控件样式。

1 个答案:

答案 0 :(得分:1)

您正在寻找的风格是ES_AUTOHSCROLL。没有这种风格,输入不能超过编辑控件的长度。使用此样式,当输入到达控件的末尾时,文本将自动向右滚动10个字符。

你可能也对ES_MULTILINE感兴趣,它完全按照它的说法行事。默认(没有此样式)是单行编辑控件。

所有可用的样式都记录在案here。这些只是常规窗口样式,而不是扩展窗口样式。

另外,我很确定在创建控件之后,您无法在运行时更改这些样式。因此,请确保在调用CreateWindowEx时指定它们,或者在控件存在于对话框中的资源文件中指定它们。