Aracılığıyla paylaş


Nasıl yapılır: Komut satırından Windows Forms uygulaması oluşturma

Aşağıdaki yordamlarda, komut satırından bir Windows Forms uygulaması oluşturmak ve çalıştırmak için tamamlamanız gereken temel adımlar açıklanmaktadır. Visual Studio'da bu yordamlar için kapsamlı destek sağlanır. Ayrıca bkz . İzlenecek Yol: WPF'de Windows Forms Denetimi Barındırma.

Yordam

Formu oluşturmak için

  1. Boş bir kod dosyasına aşağıdaki Imports veya using deyimlerini yazın:

    using System;
    using System.ComponentModel;
    using System.Drawing;
    using System.Windows.Forms;
    
    Imports System.ComponentModel
    Imports System.Drawing
    Imports System.Windows.Forms
    
  2. Form sınıfından devralan adlı Form1 bir sınıf bildirin:

    public class Form1 : Form
    
    Public Class Form1
        Inherits Form
    
  3. için Form1parametresiz bir oluşturucu oluşturun.

    Sonraki bir yordamda oluşturucuya daha fazla kod ekleyebilirsiniz.

    public Form1() {}
    
    Public Sub New()
    
    End Sub
    
  4. sınıfına bir Main yöntem ekleyin.

    1. STAThreadAttribute Windows Forms uygulamanızın tek iş parçacıklı bir daire olduğunu belirtmek için C# Main yöntemine uygulayın. (Visual Basic ile geliştirilen Windows form uygulamaları varsayılan olarak tek iş parçacıklı bir apartman modeli kullandığından, Visual Basic'te özniteliği gerekli değildir.)

    2. Uygulamanıza işletim sistemi stilleri uygulamak için çağrısı EnableVisualStyles yapın.

    3. Formun bir örneğini oluşturun ve çalıştırın.

    [STAThread]
    public static void Main()
    {
      Application.EnableVisualStyles();
      Application.Run(new Form1());
    }
    
    
        Public Shared Sub Main()
            Application.EnableVisualStyles()
            Application.Run(New Form1())
    
        End Sub
    End Class
    

Uygulamayı derlemek ve çalıştırmak için

  1. .NET Framework komut isteminde sınıfını oluşturduğunuz dizine Form1 gidin.

  2. Formu derleyin.

    • C# kullanıyorsanız şunu yazın: csc form1.cs

      -or-

    • Visual Basic kullanıyorsanız şunu yazın: vbc form1.vb

  3. Komut istemine şunları yazın: Form1.exe

Denetim ekleme ve olayı işleme

Önceki yordam adımlarında yalnızca derlenen ve çalışan temel bir Windows Formunun nasıl oluşturulacağı gösterilmiştir. Sonraki yordamda, forma denetim oluşturma ve forma denetim ekleme ve denetim için bir olayı işleme işlemleri gösterilir. Windows Forms'a ekleyebileceğiniz denetimler hakkında daha fazla bilgi için bkz . Windows Forms Denetimleri.

Windows Forms uygulamalarının nasıl oluşturulacağını anlamaya ek olarak, olay tabanlı programlamayı ve kullanıcı girişinin nasıl işleneceğini anlamanız gerekir. Daha fazla bilgi için bkz . Windows Forms'da Olay İşleyicileri Oluşturma ve Kullanıcı Girişini İşleme

Düğme denetimi bildirmek ve tıklama olayını işlemek için

  1. adlı button1bir düğme denetimi bildirin.

  2. Oluşturucuda düğmeyi oluşturun ve öğesini SizeLocation ve Text özelliklerini ayarlayın.

  3. Forma düğmeyi ekleyin.

    Aşağıdaki kod örneğinde düğme denetiminin nasıl bildir olduğu gösterilmektedir:

    public Button button1;
    public Form1()
    {
        button1 = new Button();
        button1.Size = new Size(40, 40);
        button1.Location = new Point(30, 30);
        button1.Text = "Click me";
        this.Controls.Add(button1);
        button1.Click += new EventHandler(button1_Click);
    }
    
    Public WithEvents button1 As Button
    
    Public Sub New()
        button1 = New Button()
        button1.Size = New Size(40, 40)
        button1.Location = New Point(30, 30)
        button1.Text = "Click me"
        Me.Controls.Add(button1)
       
    End Sub
    
  4. Düğmenin olayını işlemek Click için bir yöntem oluşturun.

  5. Tıklama olayı işleyicisinde , "Merhaba Dünya" iletisiyle bir MessageBox görüntüleyin.

    Aşağıdaki kod örneği, düğme denetiminin tıklama olayının nasıl işleneceğini gösterir:

    private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show("Hello World");
    }
    
    Private Sub button1_Click(ByVal sender As Object, _
        ByVal e As EventArgs) Handles button1.Click
        MessageBox.Show("Hello World")
    End Sub
    
  6. Click Olayı oluşturduğunuz yöntemle ilişkilendirin.

    Aşağıdaki kod örneği, olayın yöntemiyle nasıl ilişkilendirileceklerini gösterir.

    button1.Click += new EventHandler(button1_Click);
    
    Private Sub button1_Click(ByVal sender As Object, _
        ByVal e As EventArgs) Handles button1.Click
    
  7. Önceki yordamda açıklandığı gibi uygulamayı derleyin ve çalıştırın.

Örnek

Aşağıdaki kod örneği, önceki yordamların tam örneğidir:

using System;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;

namespace FormWithButton
{
    public class Form1 : Form
    {
        public Button button1;
        public Form1()
        {
            button1 = new Button();
            button1.Size = new Size(40, 40);
            button1.Location = new Point(30, 30);
            button1.Text = "Click me";
            this.Controls.Add(button1);
            button1.Click += new EventHandler(button1_Click);
        }
        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Hello World");
        }
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.Run(new Form1());
        }
    }
}
Imports System.ComponentModel
Imports System.Drawing
Imports System.Windows.Forms

Public Class Form1
    Inherits Form
    Public WithEvents button1 As Button

    Public Sub New()
        button1 = New Button()
        button1.Size = New Size(40, 40)
        button1.Location = New Point(30, 30)
        button1.Text = "Click me"
        Me.Controls.Add(button1)
       
    End Sub
   
    Private Sub button1_Click(ByVal sender As Object, _
        ByVal e As EventArgs) Handles button1.Click
        MessageBox.Show("Hello World")
    End Sub

    <STAThread()> _
    Shared Sub Main()
        Application.EnableVisualStyles()
        Application.Run(New Form1())

    End Sub
End Class

Ayrıca bkz.