当前位置: 首页 > news >正文

9、鼠标、GDI+ 与面向对象 GUI 开发

鼠标、GDI+ 与面向对象 GUI 开发

1. 鼠标与 GDI+ 基础

在数据输入程序中,结合图形元素能让程序更具视觉描述性。例如在医院供应程序里,列表可以是手术器械复杂的拉丁名称,而图像则是器械的图片,图像能帮助用户验证对名称含义的理解。在在线商店结账屏幕等场景也能采用类似设计。

GDI+ 的一项重要功能是侯爵式选择(marquis selection),它允许用户在面板中拖动一个矩形来选择其中的标志。实现这一功能需用到Graphics.DrawRectangle方法,但该方法要求矩形数据类型参数的起点在矩形左上角,终点在起点的右下方。

考虑以下 C# 定义的矩形:

Rectangle r1 = new Rectangle(100, 100, 100, 50); Rectangle r2 = new Rectangle(100, 100, -100, 50); Rectangle r3 = new Rectangle(100, 100, 100, -50); Rectangle r4 = new Rectangle(100, 100, -100, -50);

虽然这些矩形在语法上都合法,但只有r1DrawRectangle方法有效。用户拖动鼠标时,不一定会从左上角开始到右下角结束,所以需要将后三个矩形转换为合适的形式,确保四个值都为正。

为此,可创建一个静态类RectangleC来完成转换:

http://www.cnnetsun.cn/news/177463.html

相关文章:

  • 19、使用 XmlValidatingReader 进行 XML 数据验证
  • 21、多线程在 Windows Forms 控件中的应用与实践
  • 24、软件开发技术综合解析
  • 2、Direct3D入门指南
  • LangFlow谜语与脑筋急转弯生成器
  • 前端踩坑实录:a标签下划线那些你不知道的细节与修复技巧
  • LangFlow如何导出为可执行代码?用于生产环境部署
  • LangFlow网页内容抓取+摘要生成一体化流程
  • LangFlow中的条件分支与循环结构如何设置?
  • 19、深入了解Windows 8安全设置:访问配置与认证授权
  • 23、Windows 8 远程访问与移动性配置全解析
  • LangFlow插件生态逐步完善,支持第三方扩展
  • 2、Windows 7:功能、安装与使用全解析
  • 【C++】深入浅出“图”——图的遍历与最小生成树算法
  • LangFlow图像处理能力拓展:结合Stable Diffusion
  • 21、网络技术与系统管理综合指南
  • LangFlow前端界面定制化修改指南
  • LangFlow对GPU资源占用情况实测报告
  • Excalidraw支持哪些格式导入导出?一文说清楚
  • Excalidraw绘制留存曲线:用户生命周期图解
  • LangFlow在企业级AI中的应用前景分析
  • Excalidraw如何利用GPU算力池降低成本?
  • 29、传感器的使用:从基础到高级应用
  • 34、深入了解Windows 8 应用开发:输入设备查询与调试技巧
  • 38、Windows开发技术综合指南
  • 【码道初阶】LeetCode面试题 17.14 最小 K 个数:两种堆解法的“同题不同命”
  • Excalidraw白板工具通过AI实现图形语义搜索
  • Excalidraw AI功能可识别模糊描述并主动提问
  • Excalidraw白板工具AI版支持手势操作与触控
  • Excalidraw白板工具新增AI纠错功能,图形更规范