vc CEdit类控件的使用

当控件变量设置为Value时,必须用UpdateData。
(通常编辑框变量设置为Value)

UpdateData(TRUE) -- 刷新控件的值到对应的变量//程序

UpdateData(FALSE) -- 拷贝变量值到控件显示

控件变量设置为Control时,直接使用类的成员函数(.)操作。

 m_path.SetWindowText("wangshuai!");
 CString str;
 GetDlgItem(IDC_EditPath)->GetWindowText(str);
 MessageBox(str);

 

  编辑控件用于程序需要获取文本的时候,例如,在对话框内输入名字或数字时,由编辑控件获取此信息。编辑控件是用来存储用户输入的自由格式文本的窗口,分为单行编辑控件和多行编辑控件。单行编辑控件是用于输入单行文本的控件,多行文本编辑控件是用于输入多行文本的控件。在多行编辑控件中经常使用滚动条,从而能输入比显示区域更多的文本。事实上,Windows中的记事本(Notepad)应用程序就是一个带有控件菜单的编辑控件。
每个编辑控件都提供了内置编辑能力,因此可以使用多行编辑控件来创建一个简单的文本编辑器。所有的编辑控件都支持特定的编辑功能,而不需要任何附加编程。在剪贴板中用到的粘贴命令在编辑控件中照常可以使用。

编辑控件能够发送WM NOTIFY消息到对话框窗口,并告诉对话框窗口用户对编辑控件所做的操作,编辑控件能够处理的消息类别如下所示。
消息类别  发生事件
EN_ CHANGE输入框中的文本串被修改
EN_ ERRSPACE输入的文本串超过了输入框的显示范围
EN_ HSCROLL 按下水平滚动条
EN_KILLFOCUS  输入框失去焦点,也就是焦点转移到其他对象
EN_ MAXTEXT 输入的文本串超过了设定的最大输入长度
EN_ SETFOCUS  输入框获取焦点
EN_ UPDATE  更新显示内容
EN_ VSCROLL 按下垂直滚动条

使用C1assWizard可以为一个编辑控件映射一个对话框的成员变量,通过对话框的数据交换机制,方便地获取用户输入的内容,或把应用程序的响应结果输出到编辑框。成员变量的数据类型可以设为CString, int, UINT, long, DWORD, float, double. BYTE, short,BOOL, COleDateTime, COleCurrency}方便程序员在不同应用情况下的数据处理。

(一)属性设置
通过Styles标签页的设置,可以得到不同类型的编辑框样式:多行编辑框、密码编辑框,只读编辑框,大小写转换编辑框、数字编辑框等等。
1 .Align text
控制编辑控件中的文本对齐方式。可能的取值有左对齐、居中和右对齐。
2: Muttiline
定义该编辑控件为多行文本编辑。通常情况下,该选项不被选中。
3. Number
限定用户输入的只能是数字。
4. Horizontal scroll
在多行编辑控件中提供一个水平滚动条。默认该选项不被选中。
5. Auto HScroll
当用户在编辑框的最右边输入字符时,文本自动进行滚动。该选项通常被选中。
6. Vertical scroll
在多行编辑控件中提供一个垂直滚动条。默认该选项不被选中。
7. Auto VScroll
在多行编辑控件中,当用户在最后一行按回车键时,文本自动向下滚动。默认该选项不被选中。
8 .Password
当用户在编辑控件中输入字符时,在编辑框中不显示输入的文本,而是相同个数的“*”字符。这一选项在多行编辑控件中不能使用。默认不被选中。
9. No hide selection
当编辑控件失去或重新获得焦点时,该项设置将改变文本的显示方式,使编辑框中选择的文本好像总是处于选中状态。默认该选项不被选中。
10. OEM convert
对用户输入内容进行从Windows字符集到OEM字符集的转化,这样可以使调用AnsiToOem时正常工作。默认不被选中。
11.Want return
应用于多行编辑控件。该选项允许在编辑控件中按Enter键换行,而不影响对话框的默认按钮。
12. Border
为控件创建边界,该选项默认被选中。
13. Uppercase
将所有的输入内容转化为大写字符,默认不被选中。

14. Lowercase
将所有的输入内容转化为小写字符,默认不被选中。
15. Read-only
禁止用户在编辑控件中输入或修改其内容,默认不被选中。与静态文本控件的扩展属性相比,编辑控件的扩展属性只增加了一项Left scroll bar,如果设置了垂直滚动条,这一项决定了滚动条在客户区的左边。它的类型是布尔型,默认情况下不选中。


编程实例:Exam6_1编写一个用户登录的应用程序,应用程序维护着一张合法用户的用户名和密码的列表,至于合法用户才能通过登录程序.要求如下:

(1)用户名输入后,转换为大写字母显示,最大长度不能超过10位。
(2)密码以‘*’代替显示,密码只能是6位数字。
(3)按“确定”按钮时,需要确认输入框不为空,且输入符合要求,否则返回输入框重新输入。
(4)对合法用户显示欢迎对话框,对不合法用户显示警告对话框。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值