Vous êtes sur la page 1sur 9
Cuprins Partea |. Aplicatii Windows cu G# 1, Formulere, casete de text, butosne, etichete, imagini Studu de caz. si Buton cu imagine $i text. Numere prime ‘Cire ordonate is 0 Incercare de test-gil Exersare co ‘Construrea unui numar 8 oglindim Imagini... Opera PE SHE nnn 0 alta tnoercare de test-gila ‘Aprotundare _ Descompunerea unui numar natural Problema dametor.. Performanga csi \Coloreaz® cu patru culori Sumi maxims fn triunghi Subgit comum maximal i 2, Timp, contor de timp si animate Studi de eaz Fluturele Indragostit nn co Efectul typevaiter (magina de scris) ‘Calculul combinarior Exersare Arta Bezer Arta... © spiral. Un seare wit Grafuri neorientate. Matricea de adiacentS. Parcurgerea DF. Parcurgerea BF .. Aprofundare Tose cover. _ ‘Gonerarea permutarilr if Perforrmanté . ce - coo nnn 88 Invazie de gandsci ~ 68 3. Text, font, animate, fisiere text . 73 ‘Stud de caz : 5 a 73 Despartre in cuvinte z aan 73 Robrea unui text, Exersare . é Despre fontur.. ‘Stolute Zodiacul chinezese . ann 82 ‘Glume pe categori me BA Aprofundaté oo. eo eeeeeeees tieeonieeeesenet a7 Test de angler — — 87 (Un editor de text 90 Perforrmanta ai sia 83 ‘Spanzuratoarea “ 93 (Un test-gra ,ca la carte” sosirass Sms ONue 95 4, Mouse-ul, priatenl nostru Studu de caz si ‘ aa a Muti: mouse-ul 7 : i 99 Deseneazs cu mouse-ul sau Un Paint In miniatur ..onnn nnn 101 Exersare - - 108 Forma personaiizata 103 ‘Cursorul mouse-ulut . as 105 ‘Aprofundare.. - - conn 108 Faramite-Flex Ss 108 Hagureaza domino. ‘ sesh wteaininnaican m Performanti : earn m4 Tale MEF si ine sie Problema celor pau discuri de aceeag! Culeare nen eneennnenen ne Partea a tia. Interactiunea cu baze de date 1, Proiectarea bazelor de date. itt 197 Proiectarea unei beze de date 137 Medelul conceptual atagat unel aplapi saa a 143 2. Comenai DML de manipulare a datelor aa 447 Solactia inregistrérilor - — 447 Inserarea Tnregistratilor sn Modifcarea Tnregistrarior wos os Stergerea inregistrarilor a soe 3. Instantierea unei baze de date folosind medi visual... Stabllrea une! conexiuni.... Restrictonarea sursei de date .. Utiizarea controlulul DataGridView In operat DML 4, Filtrarea datelor 5. Afigare cu sumar... 6, DataGridView - Beet... oo 7. Evidentierea celutelor ss 8, Selectarea valor introduse in tabeté. sui a8 Afgares imaginilor eu sjutorul OstaGridView e 410, Transmiterea datelor prin e-mail i Bibliografie 149, 150 151 153 153, 185 160 163, 166 m 181 183 169 197 203 400 Aplicatii Windows cu Gi Implementarea algoritmului namespace mouse_move t public partial class Forma : Form { Point m = Point.Empty; Random r = new Random(); public Form4() { InitializeComponent(); + protected override void OnMouseMove(MouseEventaras e) € Graphics gr = CreateGraphics(); Draw(gr,this.BackColor,m); m=new Point(e.X,e.¥); //Braw(gr, Color.Orange, m); //(2) Draw(ar,this.ForeColor,m); /#(2) 9r-Dispose(); x void Draw(Graphics gr,Color c, Point p) ¢ Int x = this. Width; int y = this.Height; Pen pen = new Pen(c); //pen.Width = r.Next(10) + 1; //(3) r-DrawLine(pen, p, nevr Point(0, )); gr-DrawLine(pen, p, new Point(x/4, 0}); gr-DrawLine(pen, p, new Point(x/2, 0)); ‘or.DrawLine(pen, p, new Point(3*x/4, 0)); ‘r.DrawLine(pen, p, new Point(x, /4)); ‘gr.DrawLine(pen, p, new Point(x, 3*y/4)); } a Mouse-ul, prietenul nostru 101 nes Daca stergem comentanile din fala celor dova lini marcate cu | gi 3 si eomen- {4m linia 2, obfinem un desen simpatic rezultat din urmdirirea mouse Deseneaza cu mouse-ul sau un Paint in miniatura Definirea problemei. Sa se ereeze 0 aplicafie de tip Paint, dar mult mai sim- pla, adie o aplicatic in care pentra desenare vom putea alege doar euloarca Analiza problemei. Cu ajutorul evenimentului MouseMove vom deseaa © clipsa gi interionul sau (FillElipse) la fiecare miscare a mouse-ului. Proiectarea interfe(ei grafice. Se adauga formularalui urmatonul obicct + un buton cu textul Alege culoarea de desenat” 402 Aplicatii Windows cu Gi Implementarea algoritmului namespace deseneaza_cu_mouse t public partial class Desen : Form t bool deseneaza = false; Color c = new Color(); Pen p; public Desen() q InitializeComponent(); this.MouseDown += new ‘System. Windows. Forms .MouseEventHandler(this.Painter_MauseDawn); this.MouseUp += new ‘System, Windows. Forms,MouseéventHiandler(this.Painter_MauseUp); this.MouseMove += new System. Windows. Forms. MouseEventHandler(this.Painter_MouseMove}; 3 private void Painter_MouseDown(object sender, ‘System. Windows. Forms.MauseEventArgs e) { deseneaza = true; } private void Painter_MouseUp(object sender, System. Windows. Forms. MauseEventargs e) 4 deseneaza = false; } private void Painter_MouseMove(object sender, System. Windows. Forms. MauseEventArgs e) { it (deseneaza) 4 Graphics 9 = this.CreateGraphics(); 4 FillElipse(new SolidBrush(c), eX, €.¥, 10, 10); Mouse-ul, prietenul nostru 103 + private void buttond_Click(object sender, EventArgs e) { ColorDialog colorDialog = new ColarDialogt); if (colorDiatog. ShowDialog() != DialogResult.Cancel) 4 «= colorDialeg.Color; Forma personalizata Definirea problemei. Sa se realizeze @ forma prictenoasd care si aibit un contur neomogen. Analiza problemei. Se alege pentru proprictatea Backgroundimage a formei 0 imagine cu contur neomogen precum cea din figura. Se alege pentru proprictatca TransparencyKey o culoare identicd cu culoarea formei Pentru a inchide forma, utilizim dowi metede: clic pe Jnchide sau clic~ ~dreapta pe forma. Proiectarea interfegei grafice. Se adauoa fonmulanului urmatoarele obiecte: + un meniu ToolStripMenu cu un item Inchide” 104 Aplicatii Windows cu Gi Implementarea algoritmului namespace ferma_personalizata t Point pozi -_veche; public partial class Ferma. : Form 4 public Form4() 4 InitializeComponent(); this.MouseDown += new ‘System. Windows. Forms. MouseEventHandler(this.Form1_MouseDown); this.MouseMove += new ‘System, Windows. Forms. MouseEventHandler(this.Form1_MouseMove); this.MouseUp+=new ‘System, Windows, Forms. MouseEventHandler(this.Formi_MouseUp); this.FormBorderStyle = FormBorderStyle.None; this. Width = this.Backgroundimage. Width; this. Height = this.Backgroundimage. Height; this.TranspareneyKey = this.BackColor;//culoarea forme private void Forma_MouseUp(object sender, MouseEventArgs €) 4 if (e.Button 4 MouseButtons.Right) this.Close(); + private void Form4_MouseDewn(object sender, MouseEventArgs e) 4 pozitie_veche = new Point(e.x, e.¥); 3 private void Form1_MouseMove(object sender, MouseEventargs e) { if (e.Butten == MouseButtons.Left) 4 this.Left += €.X - pozitie_veche.X; Mouse-ul, prietenul nostru 105 this.Top += e.Y - pozitie_veche.Y; } 3 private void inchideTooIStripMenultem_Cliek(object sender, EventAras @) ¢ this.Close(); + + + Cursorul mouse-ului Definirea problemed. Sa se realizeze © aplicajie care si pun’ in evidenfa diferite forme ale cursorului mouse-lui Analiza problemei, Cursorul mouse-ului este o imagine bitmap vizibila pe ecran A pozifia curent a mouse-ului, Cursorul mouse-ului este un obivet de tip Cursor. Pentru a objine un obiect de tip Cursor vom utiliza clasa Cursors, in aplicatia noastra vom utiliza urmatoarcle proprictaiti ‘Cursors: PanNorth, PanWest, PanEast, PanSouth, Hand, Help. Default, ‘WaitCursor. Pentru a realiza un cursor personalizat ummm pagii: + cresim o imagine bitmap (Bitmap b = new Bitmap(175, 25);) = 0 deseniim pe forma (Graphics 9 = Graphies.Fromimage(b); Font f = new Font(FontFamily.GenericSansSerif, 10); 9.DrawString “Cursor personalzat”f, Brushes, Yello, 0, 0);) * cred un pointer spre imagine (IntPtr ptr = b.GetHicon();) + ercdim un now cursor eu aceasti forma (Cursor ¢ = new Cursor(ptr);) * atagaim noul cursor formei (this Cursor = c;)

Vous aimerez peut-être aussi