电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

利用C更专业的实现运行时调整控件大小和位置

利用C更专业的实现运行时调整控件大小和位置_第1页
1/9
利用C更专业的实现运行时调整控件大小和位置_第2页
2/9
利用C更专业的实现运行时调整控件大小和位置_第3页
3/9
利用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#下我们以另外一种思维来考虑这个问题,当在设计时的窗体上放置一个 Panel控件,然后再往该Panel控件上放置一个子控件并填充之,那么在设计时调整 Panel大小和位置时其子控件都会随之改变,我们就利用这个原理在运行时捕获获得焦点的子控件,然后让其成为类似于前述 Panel父控件的子控件,并且在父控件周围利用.Net GDI+画上用于调整的边框和锚点,当鼠标在特定位置按下并拖动时激活MouseMove事件进行响应。实现的关键就是针对于类似Panel控件的操作,直接使用 Panel控件进行上述操作也未尝不可,但是我们将会创建一个专门用于运行时动态调整控件大小和位置的自定义控件,我们把它命名为:CRectControl。 二、程序实现 启动 Visual Studio .Net 2005,首先...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

利用C更专业的实现运行时调整控件大小和位置

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部