Window 中窗口的层次关系以及窗口的属性

发表于:2008-4-25 11:50

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

        如果一个窗口有系统菜单,用户可以通过点击系统菜单图标来调用系统菜单,或者通过Alt+空格的快捷键调出系统菜单,或者通过点击任务栏上窗口的图标来调出系统菜单,如果一个窗口没有系统菜单,那么用户不能够通过键盘来实现系统命令,除非应用程序自身提供了这样的接口。系统菜单对于最大化的窗口也是很有用处的,最大化的窗口覆盖了整个屏幕,这样的窗口不能够被移动,除非恢复到不是最大化的状态,如果这个最大化的窗口有了系统菜单,则就不必一定恢复到非最大化的状态才能够移动。
WS_HSCROLL

        如果窗口被指定了这个属性,那么窗口会有一个水平的滚动条,窗口是不会自动的滚动滚动条的,如果应用程序要支持滚动条,那么必须自己处理WM_HSCROLL消息,这个属性通常是在窗口创建的时候,被指定的。 
WS_VSCROLL


        如果窗口被指定了这个属性,那么窗口会有一个竖直的滚动条,窗口不会自动的滚动滚动条,应用程序必须自己处理WM_VSCROOL消息来处理滚动条滚动的消息,这个属性通常是在窗口被创建的时候指定的。
WS_BORDER


        如果窗口被指定了这个属性,那么窗口会有一个单线的边在窗口的周围,如果没有指定这个属性,但是窗口具有标题栏,那么窗口会自动的拥有这个属性,如果窗口没有这个属性,拥有这个属性的窗口不能够通过键盘或者是鼠标改变窗口的大小。
WS_DLGFRAME


        如果窗口被指定了这个属性,那么窗口具有对话框的边框,这个属性通常是用在对话框窗口的,只能够用在窗口没有标题栏的情况下,如果一个不是对话框的窗口使用了这个窗口,那么窗口必须被指定WS_EX_DLGMODALFRAME属性。使用这个属性创建的窗口,不能够通过键盘和鼠标改变窗口的大小。
WS_THICKFRAME


        当窗口被指定了这个属性,那么窗口会有一个可以改变大小的边框,这种属性通常用在程序的主窗口,具有这种属性的窗口的大小可以通过键盘或者鼠标来改变。
WS_CLIPCHILDREN


        这个属性用在具有子窗口的窗口,使用这个属性,可以使Window把子窗口所占的区域拷贝到父窗口,而不是甴父窗口直接的画子窗口所属的区域,如果窗口没有指定这个属性,那么那么父窗口会覆盖子窗口的区域。在一些图片显示或者OpenGL显示的窗口中,指定这个属性是很重要的。
WS_CLIPSIBLINGS


        当窗口赋予这个属性,窗口在自绘的时候,不会绘制到同属的子窗口,所有具有交迭属性和弹出属性的窗口都具有这个属性,所有的顶层窗口都具有这个属性,这样一来顶层窗口在自绘的时候,不会绘制在到其他的顶层窗口。 
WS_VISIBLE


        当窗口被设置这个属性的时候,窗口是可见的,默认的情况下,应用程序必须自己调用ShowWindow来显示窗口。
WS_DISABLED


        当窗口被设置这个属性的时候,创建的窗口不能够接受用户的输入,除非应用程序自身提供方法来输入。这个属性通常用在Window控件上面。
WS_CHILDWINDOW


        这个属性同WS_CHILD。
WS_OVERLAPPEDWINDOW


        这个属性同WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_THICKFRAME|WS_MINIMIZEBOX|WS_MAXIMIZEBOX,这个属性通常用在应用程序的主窗口。
WS_POPUPWINDOW


        这个属性同WS_POPUP|WS_BORDER|WS_SYSMENU,尽管这个属性中包含了WS_SYSMENU属性,如果窗口没有WS_CAPTION属性,那么窗口也不会有系统菜单。
WS_EX_DLGMODALFRAME


        当窗口设置了这个属性的时候,窗口具有对话框的边框,这个属性通常用在对话框窗口,不过任何窗口都可以使用这个属性来获得对话框的边框。
WS_EX_NOPARENTNOTIFY


        这个属性是用在子窗口上的,当子窗口设置了这个属性,Window不发送WM_NOTIFY消息给子窗口的父窗口,默认情况下,Window会在子窗口创建或者销毁的时候发送WM_NOTIFY消息给子窗口的父窗口。WS_EX_TOPMOST


        这个属性仅用在顶层窗口,对于子窗口设置这个属性是被忽略的,如果窗口设置了这个属性,那么窗口会一直在其他窗口的上面。
WS_EX_ACCEPTFILES


        窗口设置了这个属性,那么窗口可以接受拖放的对象。
WS_EX_TRANSPARENT


        这个属性能够使窗口透明,设置了这个属性的窗口的背景使可以被看到的,透明窗口对于鼠标和键盘的消息事件并不是透明

44/4<1234
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号