WinForms: Uygulamanıza Birden Çok Tema Nasıl Eklenir

WinForms: Uygulamanıza Birden Çok Tema Nasıl Eklenir

Modern uygulamaların farklı temalar arasında geçiş yapma seçeneğine sahip olması yaygındır. Örneğin, bazı uygulamalar açık tema veya koyu tema arasında geçiş yapmanıza izin verirken, diğerleri daha fazla tema seçeneğine sahip olabilir.





Windows Forms, masaüstü uygulamaları oluşturmanıza izin veren bir UI çerçevesidir. Her tema için seçilebilir düğmeler oluşturarak temaları bir Windows form uygulamasında uygulayabilirsiniz.





GÜNÜN YAPILAN VİDEOSU

Kullanıcı bir tema seçtiğinde, seçilen temaya uyması için her bir öğenin arka plan rengini veya metin rengi özelliklerini değiştirebilirsiniz.





Windows 10 görev çubuğunda hiçbir şeye tıklayamıyorum

Windows Form Projesi Nasıl Kurulur

İlk olarak, yeni bir Windows form uygulaması oluşturun. Yeni projeyi düğmeler ve etiketler gibi bazı temel kontrollerle doldurun.

  1. Oluşturmak yeni Windows Forms uygulaması Visual Studio'da.
  2. Yeni projede, bir düğme denetimi aramak için araç kutusunu kullanın.   Winforms uygulamasında düğme için özellik penceresi
  3. seçin düğme kontrolü ve tuval üzerine sürükleyin. Toplam üç düğme denetimi ekleyin.   Winforms uygulamasında düğme için özellik penceresi
  4. Araç kutusunu kullanarak, tıklayın ve bir etiket kontrolü tuval üzerine. Etiketi düğmelerin altına yerleştirin.   Winforms uygulamasında düğme için özellik penceresi
  5. Özellikler penceresini kullanarak düğmeleri ve etiketleri şekillendirin. Özellikleri aşağıdaki şekilde değiştirin:
    Buton 1 Boyut 580, 200
    Düz Stil Düz
    Metin Kullanıcılar
    button2 Boyut 580, 100
    Düz Stil Düz
    Metin Hesaplar
    button3 Boyut 580, 100
    Düz Stil Düz
    Metin izinler
    etiket1 Metin Telif Hakkı 2022

Ayarlar Düğmesi ve Tema Listesi Nasıl Oluşturulur

Basit bir temalar menüsünün çalışması için her bir temayı temsil edecek birden çok düğme oluşturun. Uygulama, bir 'Açık' tema, bir 'Doğa' teması ve bir 'Karanlık' tema olmak üzere üç tema içerecektir.



  1. Ayarlar (veya 'Temalar') düğmesini temsil etmek için tuvale başka bir düğme denetimi ekleyin.
  2. Bu düğmenin özelliklerini aşağıdaki şekilde değiştirin:
    İsim btnTemaAyarları
    Düz Stil Düz
    Boyut 200, 120
    Metin Temalar
  3. Tuval üzerine üç düğme daha sürükleyin. Bu düğmeler üç farklı temayı temsil edecektir. Düğmelerin her birinin özelliklerini aşağıdaki şekilde değiştirin:
    1. Düğme İsim btnLightTheme
    Arka plan rengi Beyaz duman
    Boyut 200, 80
    Düz Stil Düz
    Metin Işık
    Gözle görülür Yanlış
    2. Düğme İsim btnDoğaTeması
    Arka plan rengi KaranlıkDenizYeşil
    Boyut 200, 80
    Düz Stil Düz
    Metin Doğa
    Gözle görülür Yanlış
    3. Düğme İsim btnDarkTheme
    Arka plan rengi SolukGri
    Ön renk Beyaz
    Boyut 200, 80
    Düz Stil Düz
    Metin Karanlık
    Gözle görülür Yanlış
  4. üzerine çift tıklayın Temalar buton. Bu, 'tıklamada' olayını işlemek için bir yöntem yaratacaktır. Kullanıcı bu butona tıkladığında yöntem çalışacaktır.
  5. Varsayılan olarak, 'Açık', 'Doğa' ve 'Karanlık' temaları görünmeyecektir. İşlevin içine, düğmelerin görünürlüğünü göstermek veya gizlemek için değiştirme işlevi ekleyin.
    private void btnThemeSettings_Click(object sender, EventArgs e) 
    {
    btnNatureTheme.Visible = !btnNatureTheme.Visible;
    btnLightTheme.Visible = !btnLightTheme.Visible;
    btnDarkTheme.Visible = !btnDarkTheme.Visible;
    }
  6. Visual Studio penceresinin üst kısmındaki yeşil oynat düğmesine tıklayarak uygulamayı çalıştırın.
  7. Çalışma zamanında, uygulama varsayılan olarak üç temanın her biri için düğmeleri gizleyecektir.
  8. Tıkla Temalar Gösterilecek temaları değiştirmek için düğmesine basın. tuşuna basmaya devam edebilirsiniz. Temalar görünürlüklerini değiştirmek için düğmesine basın.

Temalarınızı Nasıl Yönetirsiniz?

Kullanacağı farklı renkleri saklamak için her tema için Sözlükler oluşturun. Bu, tüm tema renklerinizi birden çok kez kullanmanız gerektiğinde tek bir yerde saklayabilmeniz içindir. Ayrıca gelecekte bir temayı yeni renklerle güncellemek istemenizi de kolaylaştırır.

pencereler proxy'yi otomatik olarak algılayamadı
  1. Varsayılanın en üstünde Form1.cs C# dosyası ve içinde Biçim sınıfı, global bir numaralandırma oluşturun. Bu numaralandırma, bir temada kullanacağınız farklı renk türlerini saklayacaktır.
    enum ThemeColor 
    {
    Primary,
    Secondary,
    Tertiary,
    Text
    }
  2. Altında, üç temanın her biri için bir tane olmak üzere üç küresel Sözlük ilan edin. Nasıl kullanılacağına aşina değilseniz Sözlükler hakkında daha fazla bilgi edinebilirsiniz. C# sözlük .
    Dictionary<ThemeColor, Color> Light = new Dictionary<ThemeColor, Color>(); 
    Dictionary<ThemeColor, Color> Nature = new Dictionary<ThemeColor, Color>();
    Dictionary<ThemeColor, Color> Dark = new Dictionary<ThemeColor, Color>();
  3. Yapıcının içinde sözlükleri başlatın. Her temanın kullanacağı farklı renkler için değerler ekleyin.
    public Form1() 
    {
    InitializeComponent();
    // Add dictionaries here
    Light = new Dictionary<ThemeColor, Color>() {
    { ThemeColor.Primary, Color.WhiteSmoke },
    { ThemeColor.Secondary, Color.Silver },
    { ThemeColor.Tertiary, Color.White },
    { ThemeColor.Text, Color.Black }
    };
    Nature = new Dictionary<ThemeColor, Color>() {
    { ThemeColor.Primary, Color.DarkSeaGreen },
    { ThemeColor.Secondary, Color.AliceBlue },
    { ThemeColor.Tertiary, Color.Honeydew },
    { ThemeColor.Text, Color.Black }
    };
    Dark = new Dictionary<ThemeColor, Color>() {
    { ThemeColor.Primary, Color.DimGray },
    { ThemeColor.Secondary, Color.DimGray },
    { ThemeColor.Tertiary, Color.Black },
    { ThemeColor.Text, Color.White }
    };
    }

Tema Nasıl Değiştirilir

Uygulamanın temasını yönetmek için işlevler oluşturun. Bu işlevler, tuval üzerindeki UI öğelerinin arka plan rengini veya metin rengini değiştirir.





androidde wifi şifresi nasıl görülür
  1. adlı yeni bir işlev oluşturun. Temayı değiştir() . İşlev, bir temanın renklerini argüman olarak alacaktır.
  2. İşlevin içinde, UI öğelerinin arka plan rengi özelliklerini değiştirin. Yeni arka plan renkleri, seçilen tema için renkleri kullanacak.
    private void ChangeTheme(Color primaryColor, Color secondaryColor, Color tertiaryColor) 
    {
    // Change background color of buttons
    btnThemeSettings.BackColor = primaryColor;
    button1.BackColor = primaryColor;
    button2.BackColor = secondaryColor;
    button3.BackColor = secondaryColor;
    this.BackColor = tertiaryColor;
    }
  3. adlı yeni bir işlev oluşturun. ChangeTextColor() . Metnin rengini koyu ve açık arasında değiştirmek için bunu kullanabilirsiniz. Bu, koyu arka plandaki metnin hala okunabilir olmasını sağlamak içindir.
    private void ChangeTextColor(Color textColor) 
    {
    // Change color of text
    button1.ForeColor = textColor;
    button2.ForeColor = textColor;
    button3.ForeColor = textColor;
    label1.ForeColor = textColor;
    btnThemeSettings.ForeColor = textColor;
    }
  4. Tasarımcıdan 'Işık' düğmesi kontrolüne çift tıklayın. Bu, arka plan kod dosyasını açacak ve kullanıcı düğmeyi tıkladığında bir olay işleyicisi oluşturacaktır.
  5. Olay işleyicisinin içinde şunu kullanın: Temayı değiştir() ve ChangeTextColor() fonksiyonlar. Temanın kullandığı renkleri girin. Bu renkleri 'Işık' tema sözlüğünden alabilirsiniz.
    private void btnLightTheme_Click(object sender, EventArgs e) 
    {
    ChangeTheme(Light[ThemeColor.Primary], Light[ThemeColor.Secondary], Light[ThemeColor.Tertiary]);
    ChangeTextColor(Light[ThemeColor.Text]);
    }
  6. Tasarımcıya geri dönün ve 'Doğa' ve 'Karanlık' düğmelerine tıklayın. Kullan Temayı değiştir() ve ChangeTextColor() olay işleyicilerinde de çalışır.
    private void btnNatureTheme_Click(object sender, EventArgs e) 
    {
    ChangeTheme(Nature[ThemeColor.Primary], Nature[ThemeColor.Secondary], Nature[ThemeColor.Tertiary]);
    ChangeTextColor(Nature[ThemeColor.Text]);
    }
    private void btnDarkTheme_Click(object sender, EventArgs e)
    {
    ChangeTheme(Dark[ThemeColor.Primary], Dark[ThemeColor.Secondary], Dark[ThemeColor.Tertiary]);
    ChangeTextColor(Dark[ThemeColor.Text]);
    }
  7. Varsayılan olarak, kullanıcı uygulamayı ilk açtığında tema 'Hafif' temaya ayarlanmalıdır. Yapıcıda, sözlüklerin altında şunu kullanın: Temayı değiştir() ve ChangeTextColor() işlevler.
    ChangeTheme(Light[ThemeColor.Primary], Light[ThemeColor.Secondary], Light[ThemeColor.Tertiary]); 
    ChangeTextColor(Light[ThemeColor.Text]);
  8. Visual Studio penceresinin üst kısmındaki yeşil oynat düğmesine tıklayarak uygulamayı çalıştırın.
  9. Varsayılan olarak, uygulama 'Açık' temasını kullanır ve gri renk şemasını UI kontrollerine uygular. Tema listesini görüntülemek için temalar düğmesini değiştirin.
  10. Doğa temasına tıklayın.
  11. Karanlık temaya tıklayın.

Windows Forms Kullanarak Uygulama Oluşturma

Birçok uygulama, kullanıcının birden çok tema arasında geçiş yapmasına izin verir. Kullanıcının seçmesi için seçenekler oluşturarak bir Windows Forms uygulamasına temalar ekleyebilirsiniz.

Kullanıcı bir temayı tıkladığında, seçilen temada kullanılan renklerle eşleşmesi için arka plan rengini, metni veya diğer özellikleri değiştirebilirsiniz.





Temaların her birinin renkleri, Visual Studio'nun yerleşik renklerini kullanır. Kullanıcılara daha iyi bir deneyim sunmak için uygun bir renk şeması kullanmanız gerekecektir. Uygulamanız için bir renk şeması seçmenin farklı yolları hakkında daha fazla bilgi edinebilirsiniz.