1.11 设置窗体位置
在许多的软件中,都会对窗体的大小、位置和移动进行限定。在不同分辨率的显示器中如何正确显示窗体、如何设置窗体始终在最上面,这些都需要本节的技术。
实例038 设置窗体在屏幕中的位置
实例说明
在窗体中可以设置窗体居中显示,本例通过设置窗体的Left属性和Top属性可以准确设置窗体的位置。运行本例,效果如图1.38所示。
技术要点
设置窗体在屏幕中的位置,可以通过设置窗体的属性来实现。窗体的Left属性表示窗体距屏幕左侧的距离,Top属性表示窗体距屏幕上方的距离。
实现过程
(1)创建一个项目,将其命名为Ex01_38,默认窗体为Form1。
(2)在窗体上添加Label控件;添加TextBox控件用来输入距屏幕的距离;添加Button控件用来设置窗体在屏幕上的位置。
(3)主要程序代码。
private void button1_Click(object sender, EventArgs e)
{
this.Left = Convert.ToInt32(textBox1.Text);
this.Top = Convert.ToInt32(textBox2.Text);
}
举一反三
根据本实例,读者可以开发以下程序。
根据分辨率的变化动态设置窗体位置。
用Timer控件实时显示窗体位置。
实例039 始终在最上面的窗体
实例说明
Windows桌面上允许多个窗体同时显示,但是只有一个窗体能够得到焦点,当一个窗体得到焦点后在其上面的窗体会被得到焦点的窗体遮挡,得到焦点的窗体会显示在最上层,这样被覆盖的窗体就不能完全的显示给用户,如果该窗体中具有实时性和比较重要的信息时,需要该窗口始终在最上层。本例就实现了此功能,运行本例后,主窗体会始终在桌面的最上面。实例效果如图1.39所示。
技术要点
在其他开发环境中实现窗体始终在最上面比较复杂,但在C# 2.0中实现非常简单,只要将TopMost属性设为True即可。下面介绍一下TopMost属性。
Form.TopMost属性用来获取或设置一个值,指示该窗体是否应显示为最顶层窗体。其结构如下:
public bool TopMost { get; set; }
l 属性值:如果将窗体显示为最顶层窗体,则为True;否则为False。默认为False。
实现过程
(1)创建一个项目,将其命名为Ex01_39,默认窗体为Form1。
(2)为Form1窗体添加背景图片,并设置窗体TopMost属性为True。
举一反三
根据本实例,读者可以开发以下程序。
可以将设为最上层的窗体设置成为一个电子表,以便观看时间。
可以将设为最上层的窗体设置成为一个工作计划表,以便随时提醒自己。





