书签 分享 收藏 举报 版权申诉 / 4
上传文档赚钱

类型C#-窗体加载大小及位置.doc

  • 上传人(卖家):最好的沉淀
  • 文档编号:5794246
  • 上传时间:2023-05-09
  • 格式:DOC
  • 页数:4
  • 大小:29.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《C#-窗体加载大小及位置.doc》由用户(最好的沉淀)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    窗体 加载 大小 位置
    资源描述:

    1、C#_窗体加载大小及位置C#_窗体加载大小及位置1 窗体在固定位置加载1.1 获取屏幕大小1.2 改变窗体的大小1.3 修改窗体加载位置1.4 完整代码演示2 窗体大小位置由上次关闭时决定2.1 保存窗体关闭时的大小和位置2.2 在窗体加载时写入记录的大小和位置2.3 完整代码演示代码下载链接:本文介绍两种设置窗体加载大小及位置的方法:一种是每次打开窗体,窗体在固定位置、按照固定的大小显示;另一种是在窗体关闭时记录下窗体的位置和大小,在下次打开时按照记录的位置和大小加载。1 窗体在固定位置加载窗体每次根据我们指定的位置和大小加载,因此需要知道当前的屏幕的大小,根据屏幕的大小设置窗体的相对大小和

    2、加载位置。1.1 获取屏幕大小获取屏幕大小有两种指令,GetWorkingArea指令表示获取不包含任务栏屏幕的大小,GetBounds指令表示获取包含任务栏屏幕的大小。这两种指令的代码如下:/通过GetWorkingArea指令获取不包含任务栏屏幕的区域Rectangle ScreenArea1 = System.Windows.Forms.Screen.GetWorkingArea(this);/获取屏幕宽度int width1 = ScreenArea1.Width;/获取屏幕高度int height1 = ScreenArea1.Height;/通过GetBounds指令获取包含任务栏

    3、屏幕的区域Rectangle ScreenArea2 = System.Windows.Forms.Screen.GetBounds(this);/获取屏幕宽度int width2 = ScreenArea2.Width;/获取屏幕高度int height2 = ScreenArea2.Height;1.2 改变窗体的大小根据屏幕大小修改适合的窗体的大小。如下代码是将窗体的大小设为屏幕的3/4:/修改窗体的宽度和高度this.Width = width1 * 3 / 4;/width1代表屏幕的宽度this.Height = height1 * 3 / 4;/height1代表屏幕的高度1.3

    4、 修改窗体加载位置根据屏幕的大小和窗体的大小计算窗体的左上角的位置。屏幕左上角的坐标为(0,0),如下代码将窗体坐标设为居中:/修改窗体加载位置,左上角代表(0,0)点,将窗体位置设为居中/width1和height1是屏幕的宽度和高度,Width和Height是窗体的宽度和高度this.Left = (width1 - this.Width) / 2;/窗体左边的位置this.Top = (height1 - this.Height) / 2;/窗体顶部的位置1.4 完整代码演示窗体的坐标和位置设置在窗体的加载事件中完成,代码如下:private void Form1_Load(object

    5、 sender, EventArgs e)/通过GetWorkingArea指令获取不包含任务栏屏幕的区域Rectangle ScreenArea1 = System.Windows.Forms.Screen.GetWorkingArea(this);/获取屏幕宽度int width1 = ScreenArea1.Width;/获取屏幕高度int height1 = ScreenArea1.Height;/*/通过GetBounds指令获取包含任务栏屏幕的区域Rectangle ScreenArea2 = System.Windows.Forms.Screen.GetBounds(this);

    6、/获取屏幕宽度int width2 = ScreenArea2.Width;/获取屏幕高度int height2 = ScreenArea2.Height;*/修改窗体的宽度和高度this.Width = width1 * 3 / 4;this.Height = height1 * 3 / 4;/修改窗体加载位置,左上角代表(0,0)点this.Left = width1 / 2 - this.Width / 2;this.Top = height1 / 2 - this.Height / 2;2 窗体大小位置由上次关闭时决定在用户打开窗体时,窗体自动根据上次关闭时的大小和位置进行加载。这里我

    7、们需要在每次窗体关闭时记录大小和位置参数。2.1 保存窗体关闭时的大小和位置在窗体关闭时,将当前窗体的大小和位置保存在注册表中。可以用Location指令描述窗口当前位置位置,Location表示空间左上角相对于容器的坐标,在这里表示窗口相对于屏幕的坐标。在FormClosed事件中,将窗口大小和位置记录在注册表中,注册表的写入需要using Microsoft.Win32,代码如下:private void Form1_FormClosed(object sender, FormClosedEventArgs e)/Window注册表基项HKEY_CURRENT_USERRegistryKe

    8、y reg1 = Registry.CurrentUser;/创建一个新子项或者打开一个现有子项进行写访问RegistryKey reg2 = reg1.CreateSubKey(SoftWareMySoft);/设定指定名称/值对,其中Location表示空间左上角相对于容器的坐标reg2.SetValue(Location.X, this.Location.X);/写入窗体左上角横坐标reg2.SetValue(Location.Y, this.Location.Y);/写入窗体左上角纵坐标reg2.SetValue(Width, this.Width);/写入窗体当前宽度reg2.Set

    9、Value(Height, this.Height);/写入窗体当前高度2.2 在窗体加载时写入记录的大小和位置在窗体加载事件中,直接提取注册表中保存的大小和位置,作为窗体加载的大小和位置。private void Form1_Load(object sender, EventArgs e)/提取注册表中的参数RegistryKey reg = Registry.CurrentUser.CreateSubKey(SoftWareMySoft);int x = Convert.ToInt32(reg.GetValue(Location.X);/提取窗口横坐标xint y = Convert.To

    10、Int32(reg.GetValue(Location.Y);/提取窗口纵坐标yint width1 = Convert.ToInt32(reg.GetValue(Width);/提取窗口宽度width1int height1 = Convert.ToInt32(reg.GetValue(Height);/提取窗口高度height1/将从注册表中提取的参数作为窗体加载的参数this.Width = width1;/修改窗口宽度大小this.Height = height1;/修改窗口高度大小this.Location = new Point(x, y);/修改窗口的位置2.3 完整代码演示pr

    11、ivate void Form1_FormClosed(object sender, FormClosedEventArgs e)/Window注册表基项HKEY_CURRENT_USERRegistryKey reg1 = Registry.CurrentUser;/创建一个新子项或者打开一个现有子项进行写访问RegistryKey reg2 = reg1.CreateSubKey(SoftWareMySoft);/设定指定名称/值对,其中Location表示空间左上角相对于容器的坐标reg2.SetValue(Location.X, this.Location.X);/写入窗体左上角横坐标

    12、reg2.SetValue(Location.Y, this.Location.Y);/写入窗体左上角纵坐标reg2.SetValue(Width, this.Width);/写入窗体当前宽度reg2.SetValue(Height, this.Height);/写入窗体当前高度private void Form1_Load(object sender, EventArgs e)/提取注册表中的参数RegistryKey reg = Registry.CurrentUser.CreateSubKey(SoftWareMySoft);int x = Convert.ToInt32(reg.Get

    13、Value(Location.X);/提取窗口横坐标xint y = Convert.ToInt32(reg.GetValue(Location.Y);/提取窗口纵坐标yint width1 = Convert.ToInt32(reg.GetValue(Width);/提取窗口宽度width1int height1 = Convert.ToInt32(reg.GetValue(Height);/提取窗口高度height1/将从注册表中提取的参数作为窗体加载的参数this.Width = width1;/修改窗口宽度大小this.Height = height1;/修改窗口高度大小this.Location = new Point(x, y);/修改窗口的位置代码下载链接:1,CSDN下载2,百度网盘下载链接:提取码:k6zx

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:C#-窗体加载大小及位置.doc
    链接地址:https://www.163wenku.com/p-5794246.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库