WinForms: kā lietojumprogrammai pievienot vairākus motīvus

WinForms: kā lietojumprogrammai pievienot vairākus motīvus

Mūsdienu lietojumprogrammās parasti ir iespēja pārslēgties starp dažādām tēmām. Piemēram, dažas lietojumprogrammas ļauj pārslēgties starp gaišo vai tumšo motīvu, savukārt citās var būt vairāk motīvu.





Windows Forms ir lietotāja saskarnes ietvars, kas ļauj izveidot darbvirsmas lietojumprogrammas. Motīvus var ieviest Windows veidlapas lietotnē, izveidojot katrai tēmai atlasāmas pogas.





Windows 10 zābaki uz melnu ekrānu
DIENAS VIDEO MAKEUSEOF

Kad lietotājs atlasa motīvu, varat mainīt katra elementa fona krāsu vai teksta krāsas rekvizītus, lai tas atbilstu atlasītajam motīvam.





Kā iestatīt Windows veidlapas projektu

Vispirms izveidojiet jaunu Windows veidlapas lietotni. Aizpildiet jauno projektu ar dažām pamata vadīklām, piemēram, pogām un etiķetēm.

  1. Izveidot a jaunā Windows Forms lietojumprogramma programmā Visual Studio.
  2. Jaunajā projektā izmantojiet rīklodziņu, lai meklētu pogas vadīklu.   Pogas rekvizītu logs lietotnē Winforms
  3. Izvēlieties pogu vadība un velciet to uz audekla. Pievienojiet pavisam trīs pogu vadīklas.   Pogas rekvizītu logs lietotnē Winforms
  4. Izmantojot rīklodziņu, noklikšķiniet un velciet a etiķetes kontrole uz audekla. Novietojiet etiķeti zem pogām.   Pogas rekvizītu logs lietotnē Winforms
  5. Izveidojiet pogu un etiķešu stilu, izmantojot rekvizītu logu. Mainiet rekvizītus uz šādiem:
    poga 1 Izmērs 580, 200
    FlatStyle Plakans
    Teksts Lietotāji
    poga 2 Izmērs 580, 100
    FlatStyle Plakans
    Teksts Konti
    poga 3 Izmērs 580, 100
    FlatStyle Plakans
    Teksts Atļaujas
    etiķete1 Teksts Autortiesības 2022

Kā izveidot iestatījumu pogu un motīvu sarakstu

Lai vienkārša motīvu izvēlne darbotos, izveidojiet vairākas pogas, kas attēlo katru motīvu. Lietojumprogrammā būs iekļautas trīs tēmas: tēma 'Gaišais', 'Daba' un 'Tumšais'.



  1. Pievienojiet audeklam citu pogas vadīklu, lai attēlotu iestatījumu (vai Motīvu) pogu.
  2. Mainiet šīs pogas rekvizītus uz šādiem:
    Vārds btnThemeSettings
    FlatStyle Plakans
    Izmērs 200, 120
    Teksts Tēmas
  3. Velciet uz audekla vēl trīs pogas. Šīs pogas attēlos trīs dažādas tēmas. Mainiet katras pogas rekvizītus uz šādu:
    1. poga Vārds btnLight Theme
    BackColor WhiteSmoke
    Izmērs 200, 80
    FlatStyle Plakans
    Teksts Gaisma
    Redzams Nepatiesi
    2. poga Vārds btnDabas tēma
    BackColor tumši jūras zaļš
    Izmērs 200, 80
    FlatStyle Plakans
    Teksts Daba
    Redzams Nepatiesi
    3. poga Vārds btnDarkTheme
    BackColor DimGray
    ForeColor Balts
    Izmērs 200, 80
    FlatStyle Plakans
    Teksts Tumšs
    Redzams Nepatiesi
  4. Veiciet dubultklikšķi uz Tēmas pogu. Tādējādi tiks izveidota metode, kā apstrādāt notikumu “noklikšķinot”. Metode darbosies, kad lietotājs noklikšķinās uz šīs pogas.
  5. Pēc noklusējuma motīvi 'Gaišais', 'Daba' un 'Tumšs' nebūs redzami. Funkcijā pievienojiet funkcionalitāti, lai pārslēgtu pogu redzamību, lai parādītu vai paslēptu.
    private void btnThemeSettings_Click(object sender, EventArgs e) 
    {
    btnNatureTheme.Visible = !btnNatureTheme.Visible;
    btnLightTheme.Visible = !btnLightTheme.Visible;
    btnDarkTheme.Visible = !btnDarkTheme.Visible;
    }
  6. Palaidiet lietojumprogrammu, noklikšķinot uz zaļās atskaņošanas pogas Visual Studio loga augšdaļā.
  7. Izpildes laikā lietojumprogramma pēc noklusējuma paslēps pogas katram no trim motīviem.
  8. Noklikšķiniet uz Tēmas pogu, lai pārslēgtu rādāmos motīvus. Varat turpināt nospiest Tēmas pogu, lai pārslēgtu to redzamību.

Kā pārvaldīt savus motīvus

Katrai tēmai izveidojiet vārdnīcas, lai saglabātu dažādās krāsas, kuras tā izmantos. Tas ir tāpēc, lai jūs saglabātu visas motīvu krāsas vienuviet, ja jums tās būtu jāizmanto vairākas reizes. Tas arī atvieglo darbu, ja vēlaties nākotnē atjaunināt motīvu ar jaunām krāsām.

  1. Noklusējuma augšdaļā Veidlapa1.cs C# failā un iekšpusē Veidlapa klasē, izveidojiet globālu sarakstu. Šajā sarakstā tiks saglabāti dažādi krāsu veidi, ko izmantosit motīvā.
    enum ThemeColor 
    {
    Primary,
    Secondary,
    Tertiary,
    Text
    }
  2. Zemāk norādiet trīs globālās vārdnīcas, pa vienai katrai no trim tēmām. Varat lasīt vairāk par vārdnīcām, ja nezināt, kā lietot a vārdnīca C# valodā .
    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. Konstruktora iekšpusē inicializējiet vārdnīcas. Pievienojiet vērtības dažādām krāsām, kuras izmantos katrs motīvs.
    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 }
    };
    }

Kā nomainīt motīvu

Izveidojiet funkcijas, lai pārvaldītu lietojumprogrammas motīvu. Šīs funkcijas mainīs audekla lietotāja interfeisa elementu fona krāsu vai teksta krāsu.





cik daudz datu izmanto straumēšanas video
  1. Izveidojiet jaunu funkciju ar nosaukumu Mainīt tēmu() . Funkcija izmantos motīva krāsas kā argumentus.
  2. Funkcijā mainiet lietotāja interfeisa elementu fona krāsu īpašības. Jaunajās fona krāsās tiks izmantotas atlasītā motīva krāsas.
    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. Izveidojiet jaunu funkciju ar nosaukumu Mainīt teksta krāsu() . Varat to izmantot, lai mainītu teksta krāsu no tumšas uz gaišu. Tas ir paredzēts, lai teksts uz tumša fona joprojām būtu salasāms.
    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. No dizainera veiciet dubultklikšķi uz pogas 'Gaisma' vadīklas. Tas atvērs aiz koda esošo failu un ģenerēs notikumu apdarinātāju, kad lietotājs noklikšķina uz pogas.
  5. Notikumu apstrādātājā izmantojiet Mainīt tēmu() un Mainīt teksta krāsu() funkcijas. Ievadiet motīvā izmantotās krāsas. Šīs krāsas varat izgūt no motīvu vārdnīcas 'Gaiša'.
    private void btnLightTheme_Click(object sender, EventArgs e) 
    {
    ChangeTheme(Light[ThemeColor.Primary], Light[ThemeColor.Secondary], Light[ThemeColor.Tertiary]);
    ChangeTextColor(Light[ThemeColor.Text]);
    }
  6. Atgriezieties pie dizainera un noklikšķiniet uz pogām 'Daba' un 'Tumšs'. Izmantojiet Mainīt tēmu() un Mainīt teksta krāsu() darbojas arī savos notikumu apdarinātājos.
    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. Pēc noklusējuma motīvam ir jābūt iestatītam uz motīvu “Vieglais”, kad lietotājs pirmo reizi atver lietotni. Konstruktorā zem vārdnīcām izmantojiet Mainīt tēmu() un Mainīt teksta krāsu() funkcijas.
    ChangeTheme(Light[ThemeColor.Primary], Light[ThemeColor.Secondary], Light[ThemeColor.Tertiary]); 
    ChangeTextColor(Light[ThemeColor.Text]);
  8. Palaidiet lietojumprogrammu, noklikšķinot uz zaļās atskaņošanas pogas Visual Studio loga augšdaļā.
  9. Pēc noklusējuma lietojumprogramma izmanto motīvu 'Gaišs' un lietotāja saskarnes vadīklām izmanto pelēko krāsu shēmu. Pārslēdziet motīvu pogu, lai skatītu motīvu sarakstu.
  10. Noklikšķiniet uz dabas tēmas.
  11. Noklikšķiniet uz tumšās tēmas.

Lietojumprogrammu izveide, izmantojot Windows veidlapas

Daudzas lietojumprogrammas ļauj lietotājam pārslēgties starp vairākiem motīviem. Motīvus varat pievienot lietojumprogrammai Windows Forms, izveidojot opcijas, ko lietotājs var izvēlēties.

Kad lietotājs noklikšķina uz motīva, varat mainīt fona krāsu, tekstu vai citus rekvizītus, lai tie atbilstu atlasītajā motīvā izmantotajām krāsām.





Katras tēmas krāsās tiek izmantotas Visual Studio iebūvētās krāsas. Lai lietotājiem sniegtu labāku pieredzi, jums būs jāizmanto pareiza krāsu shēma. Varat uzzināt vairāk par dažādiem veidiem, kā izvēlēties lietotnes krāsu shēmu.