就像使用 gdi 创建带有图片的文件菜单一样?Windows 窗体中的菜单只是带有事件的动画吗?
1 回答
您可以使用 windows gdi 制作自定义按钮和菜单吗?就像使用 gdi 创建带有图片的文件菜单一样?
你可以这样做,但我不明白你为什么要这样做。所有的 Windows GDI 函数都记录在这里。它们有很多,您需要根据您想要完成的任务来确定要调用哪些。
例如,要绘制一张图片,您需要使用该函数从某处(如磁盘上的文件或应用程序的嵌入式资源)加载位图资源LoadImage
,然后使用该BitBlt
函数或其中之一将该位图绘制到屏幕设备上下文中它的近亲。处理WM_PAINT
消息是获取可以绘制的设备上下文的首选方式。
从您的问题来看,您似乎对 GDI 的工作原理只有基本的了解。这将是一个真正的问题,因为你在这里提出的是一项相当庞大的任务。您实际上是在重新实现所有 Windows 用户界面。如果您绝对必须继续,我建议您先花一些时间学习使用 GDI 绘图的基础知识。或许可以拿起一本书,比如 Charles Petzold 的经典Programming Windows, 5th Edition和/或 Feng Yuan 的优秀Windows Graphics Programming: Win32 GDI and DirectDraw(虽然它们都已经绝版了很长时间;你需要寻找出用过的副本)。
Windows 窗体中的菜单只是带有事件的动画吗?
就像汉斯的评论所说,不,菜单实际上是窗口。但操作系统本身会为您处理所有细节,创建菜单、显示项目、执行动画等。您所要做的就是使用与菜单相关的 API 函数。这真的很简单,而且效果很好。
您可以通过自己创建窗口并应用自己的动画来创建自己的菜单。但我又问:为什么?