Teemad on suurepärane võimalus lubada kasutajatel teie rakendust kohandada, ilma et peaksite konkreetsetesse üksikasjadesse liigselt sekkuma.
Kaasaegsetes rakendustes on tavaline võimalus erinevate teemade vahel vahetada. Näiteks mõned rakendused võimaldavad teil vahetada heledat või tumedat teemat, samas kui teistel võib olla rohkem teemavalikuid.
Windows Forms on kasutajaliidese raamistik, mis võimaldab teil luua töölauarakendusi. Teemasid saate rakendada Windowsi vormirakenduses, luues iga teema jaoks valitavad nupud.
Kui kasutaja valib teema, saate muuta iga elemendi taustavärvi või tekstivärvi omadusi, et see sobiks valitud teemaga.
Kuidas seadistada Windowsi vormiprojekti
Esiteks looge uus Windowsi vormirakendus. Täitke uus projekt mõnede põhiliste juhtelementidega, nagu nupud ja sildid.
- Loo uus Windows Forms rakendus Visual Studios.
- Uues projektis kasutage nuppude juhtnupu otsimiseks tööriistakasti.
- Valige nupu juhtimine ja lohistage see lõuendile. Lisage kokku kolm nuppu.
- Tööriistakasti kasutades klõpsake ja lohistage a sildi kontroll lõuendile. Asetage siltide nuppude alla.
- Stiilige nupud ja sildid atribuutide akna abil. Muutke atribuudid järgmisteks:
Kontroll Kinnistu nimi Uus väärtus nupp1 Suurus 580, 200 FlatStyle Korter Tekst Kasutajad nupp2 Suurus 580, 100 FlatStyle Korter Tekst Kontod nupp3 Suurus 580, 100 FlatStyle Korter Tekst load silt1 Tekst Autoriõigus 2022
Kuidas luua seadete nuppu ja teemade loendit
Lihtsa teemamenüü toimimiseks looge iga teema tähistamiseks mitu nuppu. Rakendus sisaldab kolme teemat: "Hele" teema, "Loodus" ja "Tume".
- Lisage lõuendile veel üks nupu juhtelement, mis tähistab seadete (või „Teemade”) nuppu.
- Muutke selle nupu atribuudid järgmisteks:
Kinnistu nimi Uus väärtus Nimi btnThemeSettings FlatStyle Korter Suurus 200, 120 Tekst Teemad - Lohistage lõuendile veel kolm nuppu. Need nupud esindavad kolme erinevat teemat. Muutke iga nupu atribuudid järgmisteks:
Kontroll Kinnistu nimi Uus väärtus 1. nupp Nimi btnLight Theme BackColor WhiteSmoke Suurus 200, 80 FlatStyle Korter Tekst Valgus Nähtav Vale 2. nupp Nimi btnNature Theme BackColor TumeMereroheline Suurus 200, 80 FlatStyle Korter Tekst Loodus Nähtav Vale 3. nupp Nimi btnDarkTheme BackColor DimGray ForeColor Valge Suurus 200, 80 FlatStyle Korter Tekst Tume Nähtav Vale - Topeltklõpsake ikooni Teemad nuppu. See loob meetodi klõpsamise sündmuse käsitlemiseks. Meetod käivitub, kui kasutaja sellel nupul klõpsab.
- Vaikimisi pole teemad "Hele", "Loodus" ja "Tume" nähtavad. Funktsiooni sees lisage funktsioonid, et lülitada nuppude nähtavus kas kuvamiseks või peitmiseks.
privaatnetühinebtnThemeSettings_Click(objekti saatja, EventArgs e)
{
btnNature Theme. Nähtav = !btnNatureTheme. Nähtav;
btnLight Theme. Nähtav = !btnLightTheme. Nähtav;
btnDarkTheme. Nähtav = !btnDarkTheme. Nähtav;
} - Käivitage rakendus, klõpsates Visual Studio akna ülaosas rohelist esitusnuppu.
- Käitusajal peidab rakendus vaikimisi kõigi kolme teema nupud.
- Klõpsake nuppu Teemad nuppu kuvatavate teemade vahetamiseks. Võite jätkata vajutamist Teemad nuppu, et muuta nende nähtavust.
Kuidas oma teemasid hallata
Looge iga teema jaoks sõnastikke, et salvestada erinevad värvid, mida see kasutab. See on selleks, et salvestate kõik oma teemavärvid ühte kohta, juhuks kui peate neid mitu korda kasutama. Samuti muudab see lihtsamaks, kui soovite tulevikus teemat uute värvidega värskendada.
- Vaikimisi ülaosas Vorm1.cs C#-faili ja selle sees Vorm klassis, loo globaalne loend. See loend salvestab erinevat tüüpi värve, mida teemas kasutate.
enum TeemaVärv
{
esmane,
sekundaarne,
tertsiaarne,
Tekst
} - Selle all deklareerige kolm ülemaailmset sõnaraamatut, üks iga kolme teema jaoks. Lisateavet sõnaraamatute kohta saate lugeda, kui te ei tunne a sõnastik C# keeles.
Sõnastik<TeemaVärv, Värv> Valgus = uus sõnaraamat<TeemaVärv, Värv>();
Sõnastik<TeemaVärv, Värv> Loodus = uus sõnaraamat<TeemaVärv, Värv>();
Sõnastik<TeemaVärv, Värv> Tume = uus sõnaraamat<TeemaVärv, Värv>(); - Konstruktoris lähtestage sõnaraamatud. Lisage väärtused erinevatele värvidele, mida iga teema kasutab.
avalik Vorm1()
{
InitializeComponent();
// Lisa siia sõnaraamatud
Valgus = uus sõnaraamat<TeemaVärv, Värv>() {
{ Teemavärv. Esmane, Värv. WhiteSmoke },
{ Teemavärv. Sekundaarne, Värv. hõbe },
{ Teemavärv. Kolmanda taseme, värviline. valge },
{ Teemavärv. Tekst, värv. must }
};
Loodus = uus sõnaraamat<TeemaVärv, Värv>() {
{ Teemavärv. Esmane, Värv. tumemeriroheline },
{ Teemavärv. Sekundaarne, Värv. AliceBlue },
{ Teemavärv. Kolmanda taseme, värviline. Mesikaste },
{ Teemavärv. Tekst, värv. must }
};
Tume = uus sõnaraamat<TeemaVärv, Värv>() {
{ Teemavärv. Esmane, Värv. DimGray },
{ Teemavärv. Sekundaarne, Värv. DimGray },
{ Teemavärv. Kolmanda taseme, värviline. must },
{ Teemavärv. Tekst, värv. valge }
};
}
Kuidas muuta teemat
Looge rakenduse teema haldamiseks funktsioone. Need funktsioonid muudavad lõuendil olevate kasutajaliidese elementide taustavärvi või teksti värvi.
- Looge uus funktsioon nimega Muuda teemat(). Funktsioon võtab argumentidena teema värvid.
- Funktsiooni sees saate muuta kasutajaliidese elementide taustavärvi omadusi. Uued taustavärvid kasutavad valitud teema värve.
privaatnetühineMuuda teemat(Värv esmane värv, värv sekundaarne värv, värv tertiaryColor)
{
// Nuppude taustavärvi muutmine
btnThemeSettings. BackColor = esmane värv;
nupp1.Tagavärv = esmane värv;
nupp2.Tagavärv = sekundaarne värv;
nupp3.Tagavärv = sekundaarne värv;
see.BackColor = tertiaryColor;
} - Looge uus funktsioon nimega ChangeTextColor(). Selle abil saate muuta teksti värvi tumedaks ja heledaks. Selle eesmärk on tagada, et tumedal taustal olev tekst oleks endiselt loetav.
privaatnetühineMuuda tekstivärvi(VärvitekstVärv)
{
// Muuda värvi kohtatekst
nupp1.ForeColor = textColor;
nupp2.ForeColor = textColor;
nupp3.ForeColor = textColor;
silt1.ForeColor = tekstivärv;
btnThemeSettings. ForeColor = textColor;
} - Topeltklõpsake kujundaja nupul "Valgus". See avab koodi taga oleva faili ja loob sündmuste käitleja, kui kasutaja klõpsab nuppu.
- Kasutage sündmuste käitlejas nuppu Muuda teemat() ja ChangeTextColor() funktsioonid. Sisestage värvid, mida teema kasutab. Saate need värvid alla laadida teemasõnastikust "Light".
privaatnetühinebtnLightTheme_Click(objekti saatja, EventArgs e)
{
Muuda teemat(Valgus[ThemeColor. Esmane], Valgus[ThemeColor. sekundaarne], Valgus[ThemeColor. tertsiaarne]);
Muuda tekstivärvi(Valgus[ThemeColor. Tekst]);
} - Minge tagasi kujundaja juurde ja klõpsake nuppe "Loodus" ja "Tume". Kasuta Muuda teemat() ja ChangeTextColor() funktsioonid ka nende sündmuste käitlejates.
privaatnetühinebtnNatureTheme_Click(objekti saatja, EventArgs e)
{
Muuda teemat(Loodus[ThemeColor. Esmane], Loodus[ThemeColor. sekundaarne], Loodus[ThemeColor. tertsiaarne]);
Muuda tekstivärvi(Loodus[ThemeColor. Tekst]);
}
privaatnetühinebtnDarkTheme_Click(objekti saatja, EventArgs e)
{
Muuda teemat(Tume[ThemeColor. Esmane], Tume[ThemeColor. sekundaarne], Tume[ThemeColor. tertsiaarne]);
Muuda tekstivärvi(Tume[ThemeColor. Tekst]);
} - Vaikimisi peaks kasutaja rakenduse esmakordsel avamisel olema teemaks "Light". Kasutage konstruktoris sõnaraamatute all olevat Muuda teemat() ja ChangeTextColor() funktsioonid.
Muuda teemat(Valgus[ThemeColor. Esmane], Valgus[ThemeColor. sekundaarne], Valgus[ThemeColor. tertsiaarne]);
Muuda tekstivärvi(Valgus[ThemeColor. Tekst]); - Käivitage rakendus, klõpsates Visual Studio akna ülaosas rohelist esitusnuppu.
- Vaikimisi kasutab rakendus "Hele" teemat ja rakendab kasutajaliidese juhtelementidele halli värviskeemi. Teemade loendi vaatamiseks lülitage teemade nuppu.
- Klõpsake teemal Loodus.
- Klõpsake tumedal teemal.
Rakenduste loomine Windowsi vormide abil
Paljud rakendused võimaldavad kasutajal mitme teema vahel lülituda. Saate Windowsi vormide rakendusele teemasid lisada, luues kasutajale valikud.
Kui kasutaja klõpsab teemal, saate muuta taustavärvi, teksti või muid omadusi, et need vastaksid valitud teemas kasutatud värvidele.
Iga teema värvid kasutavad Visual Studio sisseehitatud värve. Peate kasutama õiget värviskeemi, et pakkuda kasutajatele paremat kasutuskogemust. Saate lisateavet selle kohta, kuidas saate oma rakendusele värviskeemi valida.