分享
 
 
 

windows程序设计笔记__输出文字1

王朝system·作者佚名  2007-04-27
窄屏简体版  字體: |||超大  

显示区域

1:显示区域是整个应用程序中为被标题列,窗口边框,以及可选的菜单列,工具列,状态列和滚动条占据的部分。简而言之,就是窗口中可以由程序而难以书写和传递视觉信息的部分。

2:显示区域内可以为所欲为,只不过不能假定窗口大小是某一特定尺寸,所以尽管可以建立固定大小的窗口(这对于计算器之类的应用是合理的),但在大多数情况下使用者应该能够改变应用程序框口的大小。这有2种可能。一种是程序只有仅能显示「hello」的显示区域;还有另一种可能,即程序在一个大屏幕、高分辨率的系统上执行,其显示区域大得足以显示两整页文字。灵活地处理这两种极端是Windows程序设计的要点之一。

3:在windows中,只能在窗口的显示区域绘制文字和图形,而且不能确保在显示区域内显示的内容会一直保留到程序下一次有意的改写它时还保留在那里。 例如,使用者可能会移动另一个程序的窗口,这就可能覆盖您的应用程序的一部分,windows不会保存您的窗口中别其他程序覆盖的区域,当程序移开后,windows会要求您的程序更新显示区域的这个部分。

windows 是一个消息驱动程序,它通过把消息投入应用程序消息队列中或者把消息发送给合适的窗口消息处理成,将发生的各种事件通知给应用程序。windows通过发送WM_PAINT消息通知窗口消息处理程序。

WM_PAINT消息

1:windows给窗口消息处理程曦发送的第一WM_PAINT消息是在WinMain进入消息循环之前的初始化期间。此后,窗口消息处理程序就在任何时刻准备处理其他wm_paint消息。

2:窗口消息处理程序接受到WM_PAINT的情况

1:使用者移动窗口或者显示窗口时,窗口中先前被隐藏的重新可见

2:使用者改变窗口大小

3:程序使用ScrollWindow或Scroll函数滚动显示区域的一部分。

4:程序使用IvalidateRect或者IvalidateRgn函数刻意产生WM_PAINT

3: windows可能发送WM_PAINT消息

1:Windows擦除覆盖了部分窗口的对话框或者消息框

2:菜单拉下来,然后被释放

3:显示工具提示消息

4:windows总保存它覆盖的显示区域,然后恢复它

1:鼠标光标穿越显示区域

2:图标拖过显示区域

无效区域和有效区域

1:Windows内部为每个窗口保存一个「绘图信息结构」,这个结构包含了包围无效区域的最小矩形的坐标以及其它信息,这个矩形就叫做「无效矩形」,有时也称为「无效区域」。如果在窗口消息处理程序处理WM_PAINT消息之前显示区域中的另一个区域变为无效,则Windows计算出一个包围两个区域的新的无效区域(以及一个新的无效矩形),并将这种变化后的信息放在绘制信息结构中。Windows不会将多个WM_PAINT消息都放在消息队列中。

2:窗口消息处理程序可以通过呼叫InvaladataRECT是显示区域无效.

3:在处理WM_PAINT消息处理期间,窗口消息处理程序在呼叫了BeginPaint之后,整个显示区域即变为有效。程序也可以通过呼叫ValidateRect函数使显示区域内的任意矩形区域变为有效。如果这呼叫具有令整个无效区域变为有效的效果,则目前队列中的任何WM_PAINT消息都将被删除。

GDI

要在窗口的显示区域绘图,可以使用Windows的图形设备接口(GDI)函数,hdc参数是「设备内容句柄」,它是GDI的重要部分。实际上,每个GDI函数都需要将这个句柄作为函数的第一个参数。

hdc 设备内容句柄

1:句柄只不过是一个数值,Windows以它在内部使用对象。程序写作者从Windows取得句柄,然后在其它函数中使用该句柄。

2:设备内容句柄是gdi函数的窗口"通行证",有了这种设备内容句柄,就能自如的在显示区域上绘图.

3设备内容(简称dc),实际上是gdi内部保存的数据结构.设备内容与特定的显示设备相关(如视讯显示器),对于显示器,设备内容总是与显示器上的特定窗口相关.

4:设备中有些值是图形{属性},这些属性定义了gdi绘图函数工作的细节

5:当程序需要绘图的时候,它必须先取得设备内容句柄,然后用内定的属性值填入内部设备内容结构.可以通过呼叫不同的GDI函数改变这些默认值。利用其它的GDI函数可以取得这些属性的目前值。当然,还有其它的GDI函数能够在窗口的显示区域真正地绘图。当程序在显示区域绘图完毕后,必须释放设备内容句柄,句柄被释放后就不再有效了,且不能再被使用.

6:程序必须在处理单个消息处理期间取得和释放句柄。除了呼叫CreateDC(函数,在本章暂不讲述)建立的设备内容之外,程序不能在两个消息之间保存其它设备内容句柄。

取得设备句柄的方法

1

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有