win32 5.4 对话框 子窗口控件的通用使用方法
分类:
文章
•
2024-07-01 09:42:46
- 适用控件的窗口函数:
- 由于子窗口控件实际上就是窗口,大部分窗口函数对它们都是适用的,如:
- EnableWindow 在灰化和允许状态之间切换。
- ShowWindow 在显示和隐藏之间切换。
- GetWindowText 和 SetWindowText 来改变上面文字。
- MoveWindow 改变窗口大小和移动位置。
- 举例:“显示图片”复选框的隐藏和显示,就是用ShowWindow 函数,处理“允许更换图片” 复选框时切换“更换图片”按钮状态,就是用 EnableWindow 函数。
- 显示图片:
- “允许更换图片”


- 适用控件的专门函数:
- 通过控件ID获取控件句柄:GetDigItem( ),上图有这个函数介绍(根据控件ID返回其句柄,控件实质上就是窗口对话框,所以这个函数名一点也不奇怪)
- 通过控件句柄获取控件的ID:GetDlgCtrlID( ) 或 GetWindowLong( ) 函数
- 向控件发送消息:
- 当需要向控件发送函数时,可以用GetDigItem( )通过控件ID来获取句柄,再用 SendMessage( ) 函数发送。
- 但与其上面,还有一个 SendDIgItemMessage( )函数,可以直接通过 控件ID 来发送消息。
- 要获得按下Tab键会跳到哪一个控件上去,可以使用GetNextDlgTabItem( )函数,通过这个函数可以搜索上一个,即 Shift+Tab键。
- 获得下一个分组位置,可以使用 GetNextDlgGroupItem( ) 函数,当然还可以获得上一个分组位置。