Form.SetDesktopLocation(Int32, Int32) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
以桌面坐标设置窗体的位置。
public:
void SetDesktopLocation(int x, int y);
public void SetDesktopLocation (int x, int y);
member this.SetDesktopLocation : int * int -> unit
Public Sub SetDesktopLocation (x As Integer, y As Integer)
参数
- x
- Int32
窗体位置的 x 坐标。
- y
- Int32
窗体位置的 y 坐标。
示例
下面的示例演示如何使用 SetDesktopLocation、 Load 和 Activate 成员。 若要运行该示例,请将以下代码粘贴到名为 Form1
的窗体中,其中包含一个名为 的Button1
按钮和两Label
个名为 和 Label2
的Label1
控件。
static int x = 200;
static int y = 200;
void Button1_Click( System::Object^ sender, System::EventArgs^ e )
{
// Create a new Form1 and set its Visible property to true.
Form1^ form2 = gcnew Form1;
form2->Visible = true;
// Set the new form's desktop location so it
// appears below and to the right of the current form.
form2->SetDesktopLocation( x, y );
x += 30;
y += 30;
// Keep the current form active by calling the Activate
// method.
this->Activate();
this->Button1->Enabled = false;
}
// Updates the label text to reflect the current values of x
// and y, which was were incremented in the Button1 control's
// click event.
void Form1_Activated( Object^ sender, System::EventArgs^ e )
{
Label1->Text = String::Format( "x: {0} y: {1}", x, y );
Label2->Text = String::Format( "Number of forms currently open: {0}", count );
}
static int count = 0;
void Form1_Closed( Object^ sender, System::EventArgs^ e )
{
count -= 1;
}
void Form1_Load( Object^ sender, System::EventArgs^ e )
{
count += 1;
}
static int x = 200;
static int y = 200;
private void Button1_Click(System.Object sender,
System.EventArgs e)
{
// Create a new Form1 and set its Visible property to true.
Form1 form2 = new Form1();
form2.Visible = true;
// Set the new form's desktop location so it
// appears below and to the right of the current form.
form2.SetDesktopLocation(x, y);
x += 30;
y += 30;
// Keep the current form active by calling the Activate
// method.
this.Activate();
this.Button1.Enabled = false;
}
// Updates the label text to reflect the current values of x
// and y, which was were incremented in the Button1 control's
// click event.
private void Form1_Activated(object sender, System.EventArgs e)
{
Label1.Text = "x: "+x+" y: "+y;
Label2.Text = "Number of forms currently open: "+count;
}
static int count = 0;
private void Form1_Closed(object sender, System.EventArgs e)
{
count -= 1;
}
private void Form1_Load(object sender, System.EventArgs e)
{
count += 1;
}
Shared x As Integer = 200
Shared y As Integer = 200
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
' Create a new Form1 and set its Visible property to true.
Dim form2 As New Form1
form2.Visible = True
' Set the new form's desktop location so it appears below and
' to the right of the current form.
form2.SetDesktopLocation(x, y)
x += 30
y += 30
' Keep the current form active by calling the Activate method.
Me.Activate()
Me.Button1.Enabled = False
End Sub
' Updates the label text to reflect the current values of x and y,
' which was were incremented in the Button1 control's click event.
Private Sub Form1_Activated(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles MyBase.Activated
Label1.Text = "x: " & x & " y: " & y
Label2.Text = "Number of forms currently open: " & count
End Sub
Shared count As Integer = 0
Private Sub Form1_Closed(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles MyBase.Closed
count -= 1
End Sub
Private Sub Form1_Load(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
count += 1
End Sub
注解
桌面坐标基于屏幕的工作区域,这不包括任务栏。 可以使用此方法在桌面上放置窗体。 由于桌面坐标基于窗体的工作区域,因此可以使用此方法确保窗体在桌面上完全可见。 此方法主要用于顶级表单; LayoutMdi 使用 方法将多文档接口定位 (MDI) 子窗体。