Pozrite sa, ako môžete kresliť tvary, používať farby a vykresľovať obrázky v aplikácii WinForms.
Windows Forms je rámec, ktorý vám umožňuje vytvárať desktopové aplikácie. Môžete kliknúť a pretiahnuť komponenty, ako sú tlačidlá, do vizuálneho používateľského rozhrania. Pomáha vám tiež manuálne vytvárať rôzne tvary vo vašom kóde.
Tento článok vám ukáže, ako do aplikácie pridať čiary, tvary a obrázky. Tento tutoriál používa Visual Studio 2019 Community Edition na zobrazenie príkladov.
Aké sú vstavané triedy používané na kreslenie grafiky?
Windows Forms používa programovací jazyk C#. Jeho vstavané triedy a metódy vám umožňujú kresliť rôzne tvary na plátno formulára Windows. Patria sem triedy Grafika, Pero, Farba a Štetec.
Trieda | Popis |
---|---|
Grafika | Trieda Graphics vám umožňuje kresliť tvary a čiary na plátno. Zahŕňa metódy ako:
|
Pero | Trieda Pen vám umožňuje špecifikovať vlastnosti hrotu „pera“, ktorý môžete použiť na kreslenie tvarov. Môžete určiť vlastnosti, ako je farba, hrúbka alebo štýl čiary. Metódy zahŕňajú:
|
Farba | Farebný objekt zložený z hodnôt R (červená), G (zelená) a B (modrá). Pre mnohé zo vstavaných metód, ktoré vytvárajú tvary, budete potrebovať farebný objekt. |
SolidBrush, HatchBrush, TextureBrush | Tieto triedy štetcov sú odvodené od rozhrania "Brush". Tieto triedy vám umožňujú farbiť prázdne miesta na plátne. Môžete sa tiež rozhodnúť vyplniť priestory pomocou rôznych vzorov alebo textúr. Môžete určiť vlastnosti, ako je farba. |
Obdĺžnik, Čiara, Mnohouholník, Elipsa | Na základe týchto tvarov môžete vytvárať objekty a používať ich pri volaní metód, ako je DrawRectangle(). Namiesto odovzdávania x, y, šírky a výšky ako argumentov sa môžete rozhodnúť odovzdať existujúci obdĺžnikový objekt. |
Ak chcete zobraziť zdrojový kód spusteného príkladu vyššie uvedeného návodu, navštívte stránku Úložisko GitHub. Keď to urobíte, môžete si vyskúšať nasledujúce príklady vytvoril aplikáciu Winforms.
Ako pridať farbu do obslužného programu udalosti načítania formulára
Najprv pridajte obsluhu udalosti na kreslenie tvarov pri načítaní plátna.
- Pridajte do formulára funkciu Maľovanie.
private void Form1_Paint (odosielateľ objektu, PaintEventArgs e)
{
// Kód je tu
} - Prejdite na kartu Zobrazenie návrhu.
- V okne Vlastnosti vyberte ikonu blesku a otvorte kartu „Udalosti“.
- V "Paint" v "Appearance" vyberte funkciu Form1_Paint. Toto vykoná funkciu pri spustení aplikácie.
Ako kresliť čiary na plátno formulára Windows
Na kreslenie čiar na plátno môžete použiť farbu, pero a metódu DrawLine().
- Vo funkcii Form1_Paint() vytvorte objekt Color s farbou, ktorú chcete, aby bola čiara. Potom vytvorte objekt Pero, ktorým nakreslíte čiaru.
Farba čierna = Farba. FromArgb (255, 0, 0, 0);
Pero čiernePen = nové pero (čierne); - Metóda DrawLine() z triedy Graphics nakreslí čiaru pomocou pera. Tým sa začne kresliť čiara z polohy x, y do inej polohy x, y.
e. Grafika. DrawLine (čierne pero, 300, 200, 800, 200);
- Môžete upraviť vlastnosti objektu pera, aby ste zmenili jeho šírku, štýl pomlčky a začiatok alebo koniec.
čierne pero. šírka = 20;
čierne pero. DashStyle = Systém. Kreslenie. Drawing2D.DashStyle. pomlčka;
čierne pero. StartCap = Systém. Kreslenie. Drawing2D.LineCap. ArrowAnchor;
e. Grafika. DrawLine (čierne pero, 300, 200, 800, 200); - Zmeny zobrazíte stlačením zeleného tlačidla prehrávania v hornej časti Visual Studia.
Ako kresliť tvary, ako sú obdĺžniky a kruhy
Môžete použiť triedy tvarov pre rôzne tvary alebo na plátno kresliť tvary ručne.
- Vytvorte objekt Farba a pero, ako je znázornené v predchádzajúcich krokoch. Potom použite metódu DrawRectangle() na vytvorenie obdĺžnika. Argumenty sú súradnice x a y pre ľavý horný okraj obdĺžnika spolu s jeho šírkou a výškou.
Farba červená = Farba. FromArgb (255, 255, 0, 0);
Pero červenéPen = nové pero (červené);
redPen. šírka = 5;
e. Grafika. DrawRectangle (červené pero, 100, 100, 500, 200); - Obdĺžnik môžete vytvoriť aj pomocou triedy Rectangle. Najprv vytvorte obdĺžnikový objekt. Argumenty sú tiež súradnice x a y pre ľavý horný roh, šírku a výšku.
Obdĺžnik obdĺžnik = nový obdĺžnik (100, 350, 500, 200);
- Pomocou funkcie DrawRectangle() nakreslite obdĺžnik. Namiesto odovzdávania x, y, šírky a výšky ako predtým môžete namiesto toho použiť objekt Rectangle.
e. Grafika. DrawRectangle (červené pero, obdĺžnik);
- Zmeny zobrazíte stlačením zeleného tlačidla prehrávania v hornej časti Visual Studia.
- Vráťte sa ku kódu a nakreslite ďalšie tvary. Na nakreslenie kruhu použite funkciu DrawEllipse().
Keď nakreslíte kruh, súradnice x a y (x=400, y=150) sa vzťahujú na ľavý horný roh kruhu, nie na stred kruhu.Farba zelená = Farba. FromArgb (255, 0, 255, 0);
Pero zelenéPen = nové pero (zelené);
zelené pero. šírka = 5;
e. Grafika. DrawEllipse (zelené pero, 400, 150, 400, 400); - Ak chcete nakresliť iné tvary, ako sú trojuholníky alebo šesťuholníky, použite metódu DrawPolygon(). Tu môžete zadať zoznam súradníc reprezentujúcich body tvaru.
Metóda DrawPolygon() nakreslí čiary medzi určenými bodmi. Farba modrá = Farba. FromArgb (255, 0, 0, 255);
Pero modréPen = nové pero (modré);
modré pero. šírka = 5;
BodF[] súradniceForTrojuholník = nový BodF[] {
nový PointF(400, 150),
nový PointF(300, 300),
nový PointF(500, 300)
};
e. Grafika. DrawPolygon (modré pero, súradniceForTriangle);
Ako používať triedu štetca na vypĺňanie tvarov farbou
Na vytvorenie tvarov s plnou farbou môžete použiť metódy FillRectangle(), FillEllipses() alebo FillTriangle().
- Najprv vytvorte objekt štetca.
Fialová farba = Farba. FromArgb (255, 128, 0, 0);
SolidBrush solidBrush = nový SolidBrush (fialový); - Použite metódy FillRectangle(), FillEllipses() alebo FillTriangle(). Fungujú rovnakým spôsobom ako funkcie kreslenia vyššie, s výnimkou toho, že namiesto pera používajú objekt Brush.
e. Grafika. FillRectangle (pevný štetec, 50, 50, 200, 250);
e. Grafika. FillEllipse (pevný štetec, 300, 50, 200, 200);
e. Grafika. FillPolygon (solidBrush, new PointF[] { new PointF(700, 150), new PointF(600, 300), new PointF(800, 300) }); - Môžete tiež zadať objekt tvaru priamo namiesto zadávania súradníc.
Obdĺžnik obdĺžnik = nový obdĺžnik (100, 350, 500, 200);
e. Grafika. FillRectangle (solidBrush, rectangle); - Pomocou HatchBrush vyplňte tvar pomocou iného štýlu výplne, ako je napríklad horizontálny alebo vertikálny vzor.
Farba modrá = Farba. FromArgb (255, 0, 0, 255);
Farba zelená = Farba. FromArgb (255, 0, 255, 0);
HatchBrush hatchBrush = nový HatchBrush (HatchStyle. horizontálne, zelené, modré);
e. Grafika. FillRectangle (hatchBrush, 50, 50, 200, 250); - TextureBrush môžete použiť na vyplnenie tvaru pomocou obrázka. Tu vytvorte bitovú mapu ukázaním na súbor obrázka. Namiesto vytvárania štetca pomocou farby ho vytvorte pomocou obrázka.
Bitmapový obrázok = (Bitmapový) obrázok. FromFile(@"C:\Users\Sharl\Desktop\flag.bmp", true);
TextureBrush textureBrush = nový TextureBrush (obrázok);
e. Grafika. FillRectangle (textureBrush, 100, 100, 500, 400);
Ako vykresliť obrázky do formulára
Ak chcete vykresliť obrázok, vytvorte ovládací objekt PictureBox a pridajte ho do formulára.
- Vytvorte ovládací objekt PictureBox pomocou súboru obrázka.
PictureBox picture = nový PictureBox();
obrázok. ImageLocation = @"C:\Users\Sharl\Desktop\flagLarge.bmp"; - Nastavte veľkosť obrázka a pridajte ho do formulára, aby sa vykreslil.
obrázok. SizeMode = PictureBoxSizeMode. AutoSize;
toto. Ovládacie prvky. Pridať (obrázok); - Stlačením zeleného tlačidla štart v hornej časti zobrazíte obrázok.
Pridanie ďalších tvarov do formulára Windows
Teraz by ste mali pochopiť, ako pridať čiary, tvary a obrázky do formulára Windows. Môžete kombinovať tvary a vytvárať nové tvary. Môžete sa tiež pohrať so vstavanými funkciami na vytváranie zložitejších tvarov.
Oplatí sa ASP.NET učiť v roku 2021?
Prečítajte si ďalej
Súvisiace témy
- Programovanie
- Programovanie
O autorovi
Sharlene je Tech Writer v MUO a tiež pracuje na plný úväzok v oblasti vývoja softvéru. Má bakalársky titul z IT a predchádzajúce skúsenosti so zabezpečovaním kvality a univerzitným doučovaním. Sharlene miluje hry a hru na klavír.
prihlásiť sa ku odberu noviniek
Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné e-knihy a exkluzívne ponuky!
Kliknutím sem sa prihlásite na odber