1 / 73

Vizuális programozás

Vizuális programozás. Windows Forms Párbeszédablakok és vezérlők. Grafikus felület programozása. Windows Forms Windows Presentation Foundation. Windows Forms. Form - Hogyan hozzuk létre?. Új projekt létrehozásakor egy üres formot kapunk További form létrehozása

flavio
Download Presentation

Vizuális programozás

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Vizuálisprogramozás Windows Forms Párbeszédablakok és vezérlők

  2. Grafikus felület programozása • Windows Forms • Windows PresentationFoundation

  3. Windows Forms

  4. Form - Hogyan hozzuk létre? • Új projekt létrehozásakor egy üres formot kapunk • További form létrehozása 1. Jobb egérkattintás a projekten Solution Explorer-ben 2. Add 3. Add Windows Forms

  5. Tulajdonságok beállítása Események Form neve Kategóriák szerint ABC sorrendben Leírás

  6. Eseménykezelés Események

  7. Windows Forms Designer – Automatikusan előállított kódpartial class

  8. Saját kód – partial class

  9. A form életciklusa • Konstruktor • Load – felület kialakítása, erőforrások lefoglalása történhet • Activated – a form megkapta az input fókuszt • Deactivate – a form elvesztette az input fókuszt • SizeChanged • … • FormClosing – CancelEventArgs.Cancel • FormClosed • Példaprogram: FormEsemenyek

  10. http://msdn.microsoft.com/en-us/library/8w7ed3ba(VS.71).aspx Windows Forms vezérlők

  11. Hogyanhasználjuk a vezérlőket?

  12. A háttérben keletkező kód

  13. Elnevezési konvenció • btOK, frmFőablak, msFőmenü, tsmiFájl, tbNév A név két részből áll • A komponens típusát beazonosító rész, ez kisbetűs: bt (Button), ms (MenuStrip), tsmi (ToolStripMenuItem), tb (TextBox), cb (ComboBox), lb (ListBox) • A feladatot beazonosító rész, egy vagy több szóból áll, nagybetűvel kezdődik: Főablak, Főmenü, OK, Fájl, Név

  14. Vezérlők elrendezése • Elrendezés a Format menüvel és eszköztárral • Tabulátor sorrend beállítása • Vezérlő lehorgonyzása • Dokkolás

  15. Toolbox beállítása

  16. Hogyan lássuk el menüvel a formot?

  17. Menü • MenuStrip komponens ablakra helyezése • Szokásos menüpontok automatikusan • Megadás kézzel • Minden menüpont egy önálló objektum saját tulajdonságokkal és eseményekkel

  18. Menü tulajdonságok használata

  19. Gyorsító billentyű, kiválasztó pipa, engedélyezés

  20. Fontosabb események • DropDownOpening – mielőtt lenyílna • Click • Mintaalkalmazás

  21. Gyorsmenü • ToolStripMenuItem

  22. Eseménykezelés • Azonos a főmenü eseménykezelésével

  23. Helyezzünk el egy panelt vagy egy csoportablakot a formon (Panel vagy GroupBox) 1 Helyezzünk el további vezérlőket rajta 2 Korábban a formra helyezett vezérlőket is ráhúzhatunk 3 A Panel vezérlő görgetősávokkal is rendelkezhet (AutoScrollbar=True) 4 A GroupBox címsorral is rendelkezhet (Text=címszöveg) 5 GroupBox és Panel vezérlő használata

  24. Példaalkalmazás a csoportablak és a jelölőnégyzet használatára

  25. Listaablak (ListBox) vezérlő használata • Elemek hozzáadása tervezési időben: • Items tulajdonság – String Collection Editor

  26. Listaablak kezelése • Listaablak feltöltése futási időben • string[] nevek= {"Alma", "Körte", "Banán", "Narancs"}; • lbListaablak.Items.AddRange(nevek); • Kijelölt elem lekérdezése • tbListaelem.Text=(string)lbListaablak.SelectedItem;

  27. Tulajdonság Leírás MultiColumn Többoszlopos megjelenítés engedélyezése. ScrollAlwaysVisible A görgető sáv mindig látható. SelectionMode Egy vagy több listaelem választható ki egyszerre. SelectedIndex A kiválasztott elem sorszáma (0-tól kezd). vagy -1, ha nincs kiválasztva egy sem. Items.Count A listában szereplő elemek száma. Tulajdonságok

  28. Metódusok Leírás Items.Add/Items.Insert Elemek hozzáadása. Items.Remove/Items.Clear Elemek eltávolítása. Metódusok

  29. Példaalkalmazás Listaablak használata

  30. Eszköztár készítése és használata • ToolStrip komponens formra helyezése • Eszköztár elemek létrehozása legördülő listából történő választással • Feliratos nyomógomb: DisplayStyle=Text, Text=felirat • Ikonos nyomógomb: DisplayStyle=Image, Image=…BMP fájlok • szabványos ikonok az eszköztárra: jobb egérgomb az eszköztáron, Insert Standard Items

  31. Eseménykezelés • Click esemény • A nyomógombhoz ugyanazt az eseménykezelőt kell hozzárendelni, mint amit a megfelelő menüponthoz rendeltünk

  32. Állapotsor (StatusStrip) • StatusStrip a formra • Legördülő listából állapotsor elem választás • Második lépés ismétlése • Állapotsor elemek átnevezése • Kijelölés majd Properties vagy • Állapotsor kijelölése/Properties/Items

  33. Állapotsor elemeinek beállítása

  34. Szöveg beállítása programból • ssÁllapotsor.Items[0].Text= ”Első”;

  35. Példaalkalmazás Állapotsor és választógomb használata

  36. Egérkezelés • Fontosabb események • MouseDown • MouseMove • MouseUp • Paraméter • MouseEventArgs e • e.Button • e.X, e.Y, e.Location • Példaprogram: EgérKezeles

  37. Párbeszédablakok használata Windows Forms alkalmazásokban • Előredefiniáltpárbeszédablakok Visual Studio .NET-ben • Párbeszédablakokmegjelenítése • DialogResulttulajdonság • Adatbevitelpárbeszédablakonkeresztül

  38. OpenFileDialog Állomány megnyitásakor hely és név megadása SaveFileDialog Állomány mentésekor hely és név megadása ColorDialog Színválasztás palettáról és újabb színek hozzáadása a palettához FontDialog A rendszerben telepített fontok megtekintése és betűtípus beállítás PrintDialog Nyomtató kiválasztása és nyomtatással kapcsolatos beállítások PageSetupDialog Oldalbeállítás nyomtatáshoz PrintPreviewDialog Úgy jeleníti meg a dokumentumot, ahogyan az a nyomtatás eredményeképpen látható lesz Előredefiniáltpárbeszédablakok

  39. Párbeszédablakok megjelenítése • Előredefiniáltpárbeszédablakmegjelenítése private void button1_Click(object sender, System.EventArgs e) { OpenFileDialog1.ShowDialog(); } • Üzenetablakmegjelenítése public void PerformCalculations() { MessageBox.Show ("Művelet végrehajtva", "Jelentés",MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk); }

  40. A visszatérési érték adja meg, hogy mely gombbal zárta be az ablakot a felhasználó Példa DialogResult.Cancel jelzi, hogy a felhasználó a Mégse gombon kattintott Ha készítünk egy párbeszédablakot, annak lezárását nyomógombokkal (OK, Mégse, stb.) oldjuk meg. Ezek DialogResult tulajdonsága határozza meg, hogy milyen értékkel tér vissza a ShowDialog(). A DialogResult tulajdonság tervezési és futási időben is beállítható. DialogResult DialogResult

  41. Ha OK, Megnyit, Mentés, stb. gombbal zárta le a felhasználó a párbeszédablakot, akkor 1 Kiolvassuk a párbeszédablak objektum egy vagy több tulajdonságát 2 Adatbevitel párbeszédablakon keresztül Eredmények kiolvasása a párbeszédablakból és felhasználásuk public void DisplayValue() { string Útvonal; DialogResult Eredmény = openFileDialog1.ShowDialog(); if (Eredmény == DialogResult.OK) { Útvonal = openFileDialog1.FileName.ToString(); MessageBox.Show("A kiválasztott állomány: '" + Útvonal + "'", "Kiválasztás", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); } … }

  42. Beépített párbeszédablak használata - mintaprogramok Beepitett_Pb_text Beepitett

  43. Saját párbeszédablak • Új form létrehozása (egy új ablakosztály) • Komponensek elhelyezése a formon • Automatikus bezárás beállítása egyes nyomógombokhoz előre megadott visszatérési értékekkel • Párbeszédablak objektum létrehozása • Kezdeti beállítások/a felhasználó által megadott adatok kiolvasása – probléma private elérésű komponensek • Megjelenítés • Bezárás • Adatok kiolvasása

  44. A párbeszédablak automatikus bezárása • Példaprogram: Pbablak_Automatikus_Bezarasa

  45. A felhasználó által megadott adatok kiolvasása • A komponens alapból private elérésű • A párbeszédablakon kívülről nem olvashatóak/írhatóak a tulajdonságai • 1. megoldás: a komponens elérése legyen internal • 2. megoldás: létrehozunk egy tulajdonságot a párbeszédablak osztályában

  46. Lekérdező tulajdonság beépítése • Példaprogram: Pbablak_Adatbeallitas_Kiolvasas

  47. Felhasználói adatbevitel ellenőrzése • A vezérlők ellenőrzése a Validating esemény felhasználásával • Példaalkalmazás: TextBoxkomponenshasználata • Az ErrorProvider vezérlő használata • Példaalkalmazás: TextBoxkomponenshasználataErrorProvider-rel

  48. Validating esemény • Azelőtt következik be mielőtt a vezérlő elveszítené az input fókuszt • Ha a vezérlő CausesValidation tulajdonsága True-ra van állítva (ez az alapértelmezett) • Szabályozhatjuk, hogy mikor kerülhet át a fókusz egy másik vezérlőre

  49. e.Cancel használata

More Related