Win32子控件-文本框

本文详细介绍了如何在Win32环境下创建和使用文本框控件,包括在不同消息中建立、设置样式、处理WM_COMMAND通知码,以及通过发送消息如EM_SETSEL、EM_GETSEL等来操控文本内容。此外,还涵盖了撤消、选定、滚动、字符位置和文本限制等相关操作。
摘要由CSDN通过智能技术生成

建立文本框

可以在_tWinMain函数中建立,也可以在WM_CREATE消息中建立,在WM_SIZE消息中再用MoveWindow函数初始化坐标和大小

//建立3个文本框
	box_normal=CreateWindow(TEXT("EDIT"),TEXT("默认带边框样式"),WS_VISIBLE|WS_CHILD|WS_BORDER|ES_AUTOHSCROLL,
		0,0,0,0,hwnd,(HMENU)BOX_CREATE,lpCreateStruct->hInstance,NULL);
	box_3d=CreateWindowEx(WS_EX_CLIENTEDGE,TEXT("EDIT"),TEXT("扩展3D样式"),
		WS_VISIBLE|WS_CHILD|ES_AUTOHSCROLL,
		0,0,0,0,hwnd,(HMENU)BOX_SIZE,lpCreateStruct->hInstance,NULL);
	box_3d_multiline=CreateWindowEx(WS_EX_CLIENTEDGE,TEXT("EDIT"),TEXT("扩展3D样式"),
		WS_VSCROLL|WS_VISIBLE|WS_CHILD|ES_AUTOVSCROLL|ES_MULTILINE,
		0,0,0,0,hwnd,(HMENU)BOX_SIZE,lpCreateStruct->hInstance,NULL);
	SetFocus(box_normal);
//初始化文本框坐标和大小
void OnSize(HWND hwnd,UINT state,INT cx,INT cy)
{
	MoveWindow(box_normal,cx/2-BWIDTH/2,5,BWIDTH,BHEIGHT,TRUE);
	MoveWindow(box_3d,cx/2-BWIDTH/2,5+BHEIGHT*2,BWIDTH,BHEIGHT,TRUE);
	MoveWindow(box_3d_multiline,cx/2-(BWIDTH+200)/2,5+BHEIGHT*4,BWIDTH+200,BHEIGHT*6,TRUE);
}

 

使用文本框:

(样式)

控件风格

含义

ES_AUTOHSCROLL

当用户在行尾键入一个字符时,正文将自动向右滚动10个字符,当用户按回车键时,正文总是滚向左边。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值