利用C #更专业的实现运行时调整控件大小和位置 上一篇 / 下一篇 2008-07-29 21:43:41 / 个人分类:
Net [C#] 查看( 4 ) / 评论( 0 ) / 评分( 0 / 0 ) 从Delphi、VB 到现在的Visu al Stu dio
Net 可视化的控件式编程越来越简化我们的开发过程,对于控件的可视化操作必不可少
在 Visu al Stu dio
Net 的IDE 中开发桌面应用程序时我们可以在设计时从控件工具栏拖拽若干个控件放置到窗体上,随意移动和调整控件大小,稍加布置后我们就会得到一个非常满意的UI
若是运行时也能够移动和调整控件则会给我们带来更多的好处,譬如在
Net 下运行时拖动控件可以应用于自定义窗体打印,这样就能动态的更改窗体上的控件布局和大小,打印出更加美观的报表来
本文就将利用C#演示在运行时显示一个操作边框利用它来拖动和调整控件,程序运行界面如下: 一、技术要点 运行时调整控件大小和位置很简单,在
Net下只需修改控件的location和size属性即可,动态调整时再捕获 MouseDown、MouseMove及 MouseUp事件来实时修改上述两个属性就可以实现
但是我们会发现在 Visual Studio
Net的开发环境中设计窗体布局时,选择了控件后总会有一个可以调整其大小和位置的边框出现以方便用户进行操作
在 VC6中 MFC曾经为我们提供了 CRectTracker类来完成这项工作,但是 C#里我却没有发现相关类
运行时可以调整控件位置和大小在某些情况下非常有用,譬如
Net提供了窗体打印功能,若能够在运行时调整控件大小和位置我们将会动态的生成非常漂亮和规整的报表来
借鉴CRectTracker类我们发现它实际上就相当于一个父控件,然后传递给它不同类的指针进行附着
在 C#下我们以另外一种思维来考虑这个问题