知识大全 为 .NET Compact Framework 开发能够识别方向和 dpi 的应用程序[1]
Posted 布局
篇首语:自由的生活方式是借知识和洞察获得的。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 为 .NET Compact Framework 开发能够识别方向和 dpi 的应用程序[1]相关的知识,希望对你有一定的参考价值。
为 .NET Compact Framework 开发能够识别方向和 dpi 的应用程序[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
简介
Windows Mobile Second Edition 软件支持具有横向和方屏幕显示器的设备 这是对早期 Pocket PC 上传统的仅纵向显示器的附加功能 当在方形或横向显示器上运行为纵向显示器设计的应用程序时 操作系统将自动向窗体添加一个纵向滚动条 以便使用户能够查看整个窗体 仅当有一个控件由于迁移到横向而向用户隐藏时 才会发生这种情况 在大多数情况下 这不是用户界面在横向显示器上显示的理想方式 另外还有两种替代方式 一个是创建能够在两个方向下正常工作的单个界面布局 另一个是为每个方向创建一个单独的界面布局
要使用单个布局在所有三个方向下正常工作 请对窗体进行排列 以便所有控件都位于一个方形的 x 区域中 如图 所示 这是最容易实现的解决方案 但它可能无法满足复杂窗体的需要
图 具有被设置为方形区域的控件的纵向和横向显示器
要充分利用纵向和横向这两个方向 必须为每个方向定义单独的布局 此外 还必须使用 Form Resize 事件来确定当前的方向 并根据需要重新定位控件
注在大多数情况下 没有必要为方形屏幕创建自定义布局 相反 可以使用纵向布局 并且系统将自动为其添加垂直滚动条
为每个方向创建单独的布局代码
为这两个方向中的每一个定义一个函数 在这些函数中 设置窗体上每个控件的 Size 和 Location 属性
下面的示例说明了如何更新 Visual Studio NET 中随附的 WebCrawler 示例 以使其能够识别方向 可以将相同的步骤应用于任何现有应用程序或新应用程序 以使其能够识别方向
Visual Studio NET 窗体设计器不显式支持多个布局的创建 但仍然可以将其用作工具 以帮助您使用以下过程创建相应的代码
使用设计器为纵向显示器创建布局
查看该设计器生成的代码 该代码位于一个名为 InitializeComponent 的函数中 可以通过展开 Windows 窗体设计器生成的代码 区域找到
创建一个名为 Portrait() 并以纵向模式定位控件的新函数 并且将用于设置控件的 Location 和 Size 属性的代码从 InitializeComponent 复制到 Portrait() 中
使用该设计器以横向模式所需的布局重新定位控件
使用该设计器为横向模式生成的定位代码来重复执行步骤
protected void Portrait() this crawlTime Location = new System Drawing Point( ); this crawlTime Size = new System Drawing Size( ); this crawlTimeLabel Location = new System Drawing Point( ); this crawlTimeLabel Size = new System Drawing Size( ); this crawlStartTime Location = new System Drawing Point( ); this crawlStartTime Size = new System Drawing Size( ); this crawlStartedLabel Location = new System Drawing Point( ); this crawlStartedLabel Size = new System Drawing Size( ); this light Location = new System Drawing Point( ); this light Size = new System Drawing Size( ); this light Location = new System Drawing Point( ); this light Size = new System Drawing Size( ); this linkCount Location = new System Drawing Point( ); this linkCount Size = new System Drawing Size( ); this linkCountLabel Location = new System Drawing Point( ); this linkCountLabel Size = new System Drawing Size( ); this currentPageBox Location = new System Drawing Point( ); this currentPageBox Size = new System Drawing Size( ); this currentPageLabel Location = new System Drawing Point( ); this currentPageLabel Size = new System Drawing Size( ); this addressLabel Location = new System Drawing Point( ); this addressLabel Size = new System Drawing Size( ); this noProxyCheck Location = new System Drawing Point( ); this noProxyCheck Size = new System Drawing Size( ); this startButton Location = new System Drawing Point( ); this startButton Size = new System Drawing Size( ); this addressBox Location = new System Drawing Point( ); this addressBox Size = new System Drawing Size( ); protected void Landscape() this crawlTime Location = new System Drawing Point( ); this crawlTime Size = new System Drawing Size( ); this crawlTimeLabel Location = new System Drawing Point( ); this crawlTimeLabel Size = new System Drawing Size( ); this crawlStartTime Location = new System Drawing Point( ); this crawlStartTime Size = new System Drawing Size( ); this crawlStartedLabel Location = new System Drawing Point( ); this crawlStartedLabel Size = new System Drawing Size( ); this light Location = new System Drawing Point( ); this light Size = new System Drawing Size( ); this light Location = new System Drawing Point( ); this light Size = new System Drawing Size( ); this linkCount Location = new System Drawing Point( ); this linkCount Size = new System Drawing Size( ); this linkCountLabel Location = new System Drawing Point( ); this linkCountLabel Size = new System Drawing Size( ); this currentPageBox Location = new System Drawing Point( ); this currentPageBox Size = new System Drawing Size( ); this currentPageLabel Location = new System Drawing Point( ); this currentPageLabel Size = new System Drawing Size( ); this addressLabel Location = new System Drawing Point( ); this addressLabel Size = new System Drawing Size( ); this noProxyCheck Location = new System Drawing Point( ); this noProxyCheck Size = new System Drawing Size( ); this startButton Location = new System Drawing Point( ); this startButton Size = new System Drawing Size( ); this addressBox Location = new System Drawing Point( ); this addressBox Size = new System Drawing Size( ); cha138/Article/program/net/201311/15398
相关参考
知识大全 Microsoft .NET Compact Framework 数据访问策略
Microsoft.NETCompactFramework数据访问策略 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶
知识大全 .NET Compact Framework下的注册表开发
.NETCompactFramework下的注册表开发 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧
知识大全 为 .NET Compact Framework 开发能够识别方向和 dpi 的应用程序[2]
为.NETCompactFramework开发能够识别方向和dpi的应用程序[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内
ASP.NET开发宝典:.NETFramework介绍 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧
.NETFramework概要 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! NETFramew
.NETFramework概述 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! NETFramew
知识大全 与VB .NET一起使用.NET Framework
与VB.NET一起使用.NETFramework 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 让.Net 程序脱离.net framework框架运行
让.Net程序脱离.netframework框架运行 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
.NETFramework经验总结 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! NETFram