Autorius Sharlene Von Drehnen
DalintisTviteryjeDalintisEl. paštas

Sužinokite, kaip galite piešti figūras, naudoti spalvas ir pateikti vaizdus „WinForms“ programoje.

„Windows Forms“ yra sistema, leidžianti kurti darbalaukio programas. Galite spustelėti ir vilkti komponentus, pvz., mygtukus, į vaizdinę vartotojo sąsają. Tai taip pat padeda rankiniu būdu sukurti įvairias formas jūsų kode.

Šiame straipsnyje bus parodyta, kaip prie programos pridėti linijų, formų ir vaizdų. Šiame vadove pavyzdžiams parodyti naudojamas „Visual Studio 2019 Community Edition“.

Kokios yra integruotos klasės, naudojamos piešti grafikai?

„Windows Forms“ naudoja C# programavimo kalba. Jo integruotos klasės ir metodai leidžia piešti įvairias figūras ant „Windows Form“ drobės. Tai apima grafikos, rašiklio, spalvų ir teptuko klases.

Klasė apibūdinimas
Grafika Grafikos klasė leidžia piešti figūras ir linijas ant drobės. Tai apima tokius metodus kaip:
  • DrawLine (rašiklis, 1 taškas, 2 taškas)
  • Nubrėžkite stačiakampį (x, y, plotis, aukštis)
  • Draw Polygon (Pen, PointF[])
Rašiklis Rašiklio klasė leidžia nurodyti rašiklio antgalio, kurį galite naudoti piešdami figūras, savybes. Galite nurodyti ypatybes, pvz., spalvą, storį arba brūkšnelių stilių. Metodai apima:
  • „SetLineCap“ („LineCap“, „LineCap“, „DashCap“)
Spalva Spalvotas objektas, sudarytas iš R (raudona), G (žalia) ir B (mėlyna) reikšmių. Daugeliui integruotų formų kūrimo metodų jums reikės spalvoto objekto.
SolidBrush, HatchBrush, TextureBrush Šios šepetėlių klasės kyla iš „Brush“ sąsajos. Šios klasės leidžia spalvinti tuščias drobės vietas. Taip pat galite pasirinkti užpildyti erdves naudodami skirtingus raštus ar tekstūras. Galite nurodyti tokias savybes kaip spalva.
Stačiakampis, linija, daugiakampis, elipsė Galite kurti objektus pagal šias figūras ir naudoti juos iškviesdami tokius metodus kaip DrawRectangle(). Užuot perdavęs x, y, plotį ir aukštį kaip argumentus, galite pasirinkti perduoti esamą stačiakampio objektą.

Norėdami peržiūrėti pirmiau pateikto mokymo programos pavyzdžio šaltinio kodą, apsilankykite GitHub saugykla. Kai tik tai padarysite, galite išbandyti šiuos pavyzdžius sukūrė Winforms programą.

Kaip pridėti dažų formos įkėlimo įvykių tvarkyklėje

Pirmiausia pridėkite įvykių tvarkyklę, kad pieštumėte figūras, kai įkeliama drobė.

  1. Pridėkite formos dažymo funkciją.
    private void Form1_Paint (objekto siuntėjas, PaintEventArgs e)
    {
    // Kodas eina čia
    }
  2. Eikite į skirtuką Dizaino rodinys.
  3. Lange Ypatybės pasirinkite žaibo piktogramą, kad atidarytumėte skirtuką „Įvykiai“.
  4. „Paint“ dalyje „Appearance“ pasirinkite funkciją Form1_Paint. Tai atliks funkciją, kai paleisite programą.

Kaip piešti linijas ant „Windows“ formos drobės

Norėdami piešti linijas ant drobės, galite naudoti Color, Pen ir DrawLine() metodą.

  1. Funkcijoje Form1_Paint() sukurkite Color objektą su norimos linijos spalva. Tada sukurkite rašiklio objektą, kuriuo nubrėžtumėte liniją.
    Spalva juoda = spalva. FromArgb (255, 0, 0, 0);
    Rašiklis blackPen = naujas rašiklis (juodas);
  2. Grafikos klasės metodas DrawLine() nubrėžia liniją naudodamas rašiklį. Tai pradės brėžti liniją iš x, y padėties į kitą x, y padėtį.
    e. Grafika. „DrawLine“ („blackPen“, 300, 200, 800, 200);
  3. Galite keisti rašiklio objekto ypatybes, kad pakeistumėte jo plotį, brūkšnelių stilių ir pradžios arba pabaigos dangtelį.
    juodas rašiklis. Plotis = 20;
    juodas rašiklis. DashStyle = Sistema. Piešimas. Drawing2D.DashStyle. Brūkšnys;
    juodas rašiklis. StartCap = Sistema. Piešimas. Drawing2D.LineCap. ArrowAnchor;
    e. Grafika. „DrawLine“ („blackPen“, 300, 200, 800, 200);
  4. Paspauskite žalią atkūrimo mygtuką Visual Studio viršuje, kad pamatytumėte pakeitimus.

Kaip piešti tokias formas kaip stačiakampiai ir apskritimai

Galite naudoti formų klases skirtingoms formoms arba piešti figūras ant drobės rankiniu būdu.

  1. Sukurkite spalvų ir rašiklio objektą, kaip parodyta ankstesniuose veiksmuose. Tada naudokite DrawRectangle() metodą, kad sukurtumėte stačiakampį. Argumentai yra stačiakampio viršutinės kairės pusės x ir y koordinatės, taip pat jo plotis ir aukštis.
    Spalva raudona = spalva. FromArgb (255, 255, 0, 0);
    Rašiklis redPen = naujas rašiklis (raudonas);
    raudonas rašiklis. Plotis = 5;
    e. Grafika. DrawRectangle (raudonas rašiklis, 100, 100, 500, 200);
  2. Taip pat galite sukurti stačiakampį naudodami stačiakampių klasę. Pirmiausia sukurkite objektą Stačiakampis. Argumentai taip pat yra viršutinio kairiojo kampo, pločio ir aukščio x ir y koordinatės.
    Stačiakampis stačiakampis = naujas Stačiakampis (100, 350, 500, 200);
  3. Norėdami nupiešti stačiakampį, naudokite funkciją DrawRectangle(). Užuot perdėję x, y, plotį ir aukštį, kaip anksčiau, galite naudoti objektą Stačiakampis.
    e. Grafika. DrawRectangle (raudonas rašiklis, stačiakampis);
  4. Paspauskite žalią atkūrimo mygtuką Visual Studio viršuje, kad pamatytumėte pakeitimus.
  5. Grįžkite į kodą, kad nubrėžtumėte kitas figūras. Norėdami nubrėžti apskritimą, naudokite funkciją DrawEllipse().
    Spalva žalia = spalva. FromArgb (255, 0, 255, 0);
    Rašiklis greenPen = naujas rašiklis (žalias);
    žalias rašiklis. Plotis = 5;
    e. Grafika. „DrawEllipse“ („greenPen“, 400, 150, 400, 400);
    Kai piešiate apskritimą, x ir y koordinatės (x=400, y=150) nurodo viršutinį kairįjį apskritimo kampą, o ne apskritimo centrą.
  6. Norėdami piešti kitas figūras, pvz., trikampius ar šešiakampius, naudokite metodą DrawPolygon(). Čia galite nurodyti koordinačių sąrašą, atspindintį figūros taškus.
    Spalva mėlyna = spalva. FromArgb (255, 0, 0, 255);
    Pen bluePen = naujas rašiklis (mėlynas);
    mėlynas rašiklis. Plotis = 5;
    TaškasF[] koordinatėsTrikampis = naujas taškasF[] {
    naujas taškasF(400, 150),
    naujas taškasF(300, 300),
    naujas taškasF(500, 300)
    };
    e. Grafika. DrawPolygon (mėlynas rašiklis, koordinatėsTrikampis);
    DrawPolygon() metodas nubrėžia linijas tarp nurodytų taškų. ​​​​​​

Kaip naudoti teptukų klasę formoms užpildyti spalva

Norėdami sukurti vientisos spalvos figūras, galite naudoti FillRectangle(), FillEllipses() arba FillTriangle() metodus.

  1. Pirmiausia sukurkite teptuko objektą.
    Spalva violetinė = spalva. FromArgb (255, 128, 0, 0);
    SolidBrush solidBrush = naujas SolidBrush (violetinė);
  2. Naudokite FillRectangle(), FillEllipses() arba FillTriangle() metodus. Jie veikia taip pat, kaip ir anksčiau pateiktos piešimo funkcijos, tik vietoj rašiklio jie naudoja teptuko objektą.
    e. Grafika. „FillRectangle“ (vientisas šepetys, 50, 50, 200, 250);
    e. Grafika. „FillEllipse“ („solidBrush“, 300, 50, 200, 200);
    e. Grafika. FillPolygon (solidBrush, new PointF[] { new PointF(700, 150), new PointF(600, 300), new PointF(800, 300) });
  3. Taip pat galite tiesiogiai įvesti formos objektą, o ne pateikti koordinates.
    Stačiakampis stačiakampis = naujas Stačiakampis (100, 350, 500, 200);
    e. Grafika. UžpildytiRectangle ( solidBrush, stačiakampis);
  4. Naudokite HatchBrush, kad užpildytumėte formą naudodami kitą užpildymo stilių, pvz., horizontalų arba vertikalų raštą.
    Spalva mėlyna = spalva. FromArgb (255, 0, 0, 255);
    Spalva žalia = spalva. FromArgb (255, 0, 255, 0);
    HatchBrush hatchBrush = naujas HatchBrush (HatchStyle. Horizontali, žalia, mėlyna);
    e. Grafika. FillRectangle (hatchBrush, 50, 50, 200, 250);
  5. Galite naudoti „TextureBrush“, kad užpildytumėte formą naudodami vaizdą. Čia sukurkite taškinę schemą nukreipdami į vaizdo failą. Užuot kurę teptuką naudodami spalvą, sukurkite jį naudodami vaizdą.
    Bitmap vaizdas = (Bitmap) vaizdas. FromFile(@"C:\Users\Sharl\Desktop\flag.bmp", tiesa);
    TextureBrush textureBrush = naujas TextureBrush (vaizdas);
    e. Grafika. Užpildykite stačiakampį (textureBrush, 100, 100, 500, 400);

Kaip pateikti vaizdus formoje

Norėdami pateikti vaizdą, sukurkite „PictureBox“ valdymo objektą ir pridėkite jį prie formos.

  1. Sukurkite „PictureBox“ valdymo objektą naudodami vaizdo failą.
    PictureBox paveikslėlis = naujas PictureBox();
    paveikslėlį. ImageLocation = @"C:\Users\Sharl\Desktop\flagLarge.bmp";
  2. Nustatykite vaizdo dydį ir pridėkite jį prie formos, kad jis būtų atvaizduojamas.
    paveikslėlį. SizeMode = PictureBoxSizeMode. Automatinis dydis;
    tai. Valdikliai. Pridėti (nuotrauka);
  3. Paspauskite žalią pradžios mygtuką viršuje, kad peržiūrėtumėte vaizdą.

Daugiau figūrų pridėjimas prie „Windows“ formos

Dabar turėtumėte suprasti, kaip pridėti linijų, figūrų ir vaizdų į „Windows“ formą. Galite derinti formas, kad sukurtumėte naujas formas. Taip pat galite žaisti su integruotomis funkcijomis, kad sukurtumėte sudėtingesnes formas.

Ar ASP.NET verta mokytis 2021 m.?

Skaitykite toliau

DalintisTviteryjeDalintisEl. paštas

Susijusios temos

  • Programavimas
  • Programavimas

Apie autorių

Sharlene von Drehnen (Paskelbti 7 straipsniai)

Sharlene yra MUO technologijų rašytoja ir visą darbo dieną dirba programinės įrangos kūrimo srityje. Ji turi IT bakalauro laipsnį ir ankstesnę patirtį kokybės užtikrinimo ir universitetų kuravimo srityse. Sharlene mėgsta žaisti ir groti pianinu.

Daugiau iš Sharlene Von Drehnen

Prenumeruokite mūsų naujienlaiškį

Prisijunkite prie mūsų naujienlaiškio, kad gautumėte techninių patarimų, apžvalgų, nemokamų el. knygų ir išskirtinių pasiūlymų!

Norėdami užsiprenumeruoti, spustelėkite čia