46
Лекц №4

лекц 4 шинэ

Embed Size (px)

Citation preview

Page 1: лекц  4 шинэ

Лекц №4

Page 2: лекц  4 шинэ
Page 3: лекц  4 шинэ

• Десктоп програм нь нэг компьютер дээр эсвэл

локаль сүлжээнд ажиллана.

• Десктоп програмын хэрэглэгчийн интерфейс нь

график интерфейс (GUI) дээр тулгуурласан

байдаг.

• Хэрэглэгчийн график интерфейстэй програм

зохиохын тулд .NET фреймворкийн

System.Windows.Forms, неймспейс дэх

классуудыг ашиглана.

3

Page 4: лекц  4 шинэ

• Програмын хэрэглэгчтэй харилцах хэсэг буюу

програмын харагдах байдлыг хэрэглэгчийн

интерфейс гэнэ.

• Хэрэглэгчийн интерфейсийг байгуулахдаа

дараах зүйлүүдийг анхаарах хэрэгтэй

Эмх цэгцтэй байдал

Таб дараалал

Төлвийн мөр

Хэрэгслийн тайлбар

4

Page 5: лекц  4 шинэ

• Хэрэглэгчийн интерфейсийг байгуулахад

ашиглагдах бүх объектуудыг хэрэглээнээс

хамааран дараах нэр томъѐонууд ашиглагдана.

Компонент: дахин ашиглах боломжтой, бусад

объектуудтай харилцан ажилладаг объектыг

компонент гэнэ.

Контайнер (агуулагч): нэг болон түүнээс олон

компонентийг агуулдаг объектыг агуулагч гэнэ.

Контрол: програмын интерфейсийг үүсгэхэд

ашиглагддаг тодорхой зориулалт бүхий бэлэн

объектийг контрол гэнэ.

5

Page 6: лекц  4 шинэ

• Програмын интерфейсийн үндсэн элемэнт нь форм

байна.

6

Page 7: лекц  4 шинэ

7

Page 8: лекц  4 шинэ

8

Page 9: лекц  4 шинэ

• Бүх Windows Forms контролуудSystem.Windows.Forms.Control классаас

удамшдаг.

• Бүх Windows Forms контролуудSystem.Windows.Forms.Control классын гол

проперти, метод, үзэгдлүүдийг дундаа эзэмшинэ.

9

Page 10: лекц  4 шинэ

• Форм нь програмын интерфейсийн үндсэн элемэнт

буюу өөрөөр хэлбэл удирдах элемэнтүүдийн

агуулагч болдог тул тухайн програмын чухал

бүрэлдэхүүн юм.

• Тухайн формын өнгө үзэмж дизайн форм дээр

байрлаж байгаа обьектуудын онвчтой байршил

зэрэг нь хэрэглэгч хүний ажиллах сонирхолыг

төрүүлж, ашиглахад эвтэйхэн байх ѐстой.

• Тухайн програмын зорилгоос хамаараад програм

нэг буюу хэдэн формтой байж болно.

10

Page 11: лекц  4 шинэ

• Name – энэ шинжид формын нэрийг тодорхойлно,

буцаана. (Control класс)

• Энэ нэр нь тухайн объектыг төлөөлөх хувьсагч юм.

• Формыг үүсгэсний дараа хамгийн эхэнд хийх

тохиргоо бол формыг нэрийг тодорхойлох юм.

• Аливаа програмыг зохиоход олон төрлийн олон

объект ашигладдаг. Тиймээс объектуудыг

нэрлэхдээ төрлийг нь ялгаж тодорхойлохын тулдfrm префиксийг ашиглаж занших хэрэгтэй.

• Жишээ нь: frmSecond

11

Page 12: лекц  4 шинэ

12

Page 13: лекц  4 шинэ

Үйлдэл Үүсэх үзэгдэл Тайлбар

Формыг үүсэх Формын байгуулагч

дуудагдана. Visual

studio нь формыг

бэлтгэхэд

InitializeComponent

методыг дууддаг

Формыг

харуулах

Form.Show()

Form.Load

Form.Activated

Load үзэгдэл эхэлж

үүсээд араас нь

Activated үзэгдэл

үүснэ.

13

Page 14: лекц  4 шинэ

Үйлдэл Үүсэх үзэгдэл Тайлбар

Форм

идэвхжих

Form.Activated Хэрэглэгч формыг

сонгох үед энэ үзэгдэл

үүснэ

Форм

идэвхигүй

болох

Form.Deactivate Форм фокусаа алдах

үед идэвхигүй болно.

Форм хаагдах Form.Deactivate

Form.Closing

Form.Closed

From.Close эсвэл

формын хаах товч

дээр дарахад форм

хаагдана.

14

Page 15: лекц  4 шинэ

• Аливаа форм объект нь үндсэн Form классаас

удамшсан ямар нэг класс байна.

public partial class frmFirst : Form {

public frmFirst() {

InitializeComponent();

}

}

• Тухайн классын төрлийн объектыг санах ойд

хуваарилаж, бодит объектыг үүсгэнэ.

frmFirst my = new frmFirst();

15

Page 16: лекц  4 шинэ

• Форм объектыг харуулахдаа дараах методуудыг

ашиглана.

Form.ShowDialog()

• Модаль диалогицонхыг харуулна

• Энэ төрлийн цонхыгнээсэн үед түүнийгхаах буюу ямар нэгхүртэл бусад цонхруухандах боломжгүй

Form.Show()

• Модаль бус цонхыгхаруулна

• Энэ төрлийн цонх ньтүүнийг үүсгэж байгааформтой хамааралгүйбөгөөд бусадцонхнуудын хоорондшилжих боломжтой

16

Page 17: лекц  4 шинэ

•frmFirst my = new frmFirst();

•my.ShowDialog();

Form.ShowDialog()

•frmFirst my = new frmFirst();

•my.Show();

Form.Show()

17

Page 18: лекц  4 шинэ

• BackColor – формын дэвсгэр өнгийн тодорхойлно,

буцаана. (Control класс)

• Энэ шинжийн утга нь Color бүтэц төрлийн утгаар

тодорхойлогдоно.

• Жишээ:

frmSecond second = new frmSecond();

second.BackColor = Color.Red;

second.Show();

18

Page 19: лекц  4 шинэ

• BackgroundImage – формын дэвсгэр зургийгтодорхойлно, буцаана. (Control класс)

19

Page 20: лекц  4 шинэ

• BackgroundImageLayout – формын дэвсгэр

зургийн харагдах байдлыг тодорхойлно, буцаана.

(Control класс)

• Энэ шинжийн утга нь ImageLayout тоочих төрлийн

утгаар тодорхойлогдоно.

Tile – зургийг үржүүлж, формын дэвсгэрийг дүүргэнэ.

Center – формын дэвсгэрийг төвд байрлуулна.

Stretch – зургийг сунгаж, формын дэвсгэрийг дүүргэнэ.

Zoom – зургийг томруулна.

20

Page 21: лекц  4 шинэ

Жишээ:

frmSecond second = new frmSecond();

second.BackgroundImageLayout = ImageLayout.Stretch;

Stretch

Center

Tile

Zoom

21

Page 22: лекц  4 шинэ

• Cursor – форм дээгүүр хулганы заагч

өнгөрөхөд харагдах курсорын

хэлбэрийг тодорхойлно, буцаана.

(Control класс)

• Энэ шинжийн утга нь Cursors бүтэц

төрлийн утгаар тодорхойлогдоно.

• Жишээ:

frmSecond second = new frmSecond();

second.Cursor = Cursors.Hand;

22

Page 23: лекц  4 шинэ

• Font – форм дээрх текстийн хэлбэр, хэмжээ, өнгө,

загварыг тодорхойлно, буцаана. (Control класс)

23

Page 24: лекц  4 шинэ

• ForeColor – форм дээрх текст, зургийн өнгийг

тодорхойлно, буцаана. (Control класс)

• Жишээ:

frmSecond second = new frmSecond();

second.ForeColor = Color.Red;

24

Page 25: лекц  4 шинэ

• FormBorderStyle – Формын хүрээний хэлбэрийг

тодорхойлно.

• Энэ шинжийн утга нь FormBorderStyle тоочих

төрлийн утгаар тодорхойлогдоно.

• Жишээ:

frmSecond second = new frmSecond();

second.FormBorderStyle = FormBorderStyle.FixedSingle;

25

Page 26: лекц  4 шинэ

• None – хүрээгүй

• FixedSingle – хэмжээ нь тогтмол, дан шугаман хүрээ

• Fixed3D – хэмжээ нь тогтмол, 3 хэмжээст хүрээ

• FixedDialog – өргөн, хэмжээ нь тогтмол, диалог

хэлбэрийн хүрээ

• Sizable – хэмжээ нь өөрчлөгдөх боломжтой

26

Page 27: лекц  4 шинэ

• Text – Формын гарчигийг тодорхойлно, буцаана.

(Control класс)

• Жишээ:

frmSecond second = new frmSecond();

second.Text = “Миний анхны форм”;

• string str=second.Text;

27

Page 28: лекц  4 шинэ

• Enabled – форм идэвхитэй байх эсэхийг

тодорхойлно, буцаана. (Control класс)

• Жишээ:

frmSecond second = new frmSecond();

second.Enabled = false;

28

Page 29: лекц  4 шинэ

• Locked – формыг түгжих эсэхийг

тодорхойлно.(Control класс)

• Тухайн контролыг түгжсэн үед зөөх, хэмжээг нь

өөрчлөх гэсэн үйлдлүүдийг гүйцэтгэх боломжгүй:

• Жишээ:

frmSecond second = new frmSecond();

second.Locked = true;

29

Page 30: лекц  4 шинэ

• Size – формын хэмжээ буюу өргөн, өндөрийг нь

тодорхойлно, буцаана. (Control класс)

• MaximumSize – формын хэмжээг өөрчилж болох

хамгийн дээд хэмжээ.

• MaximumSize – формын хэмжээг өөрчилж болох

хамгийн доод хэмжээ.

• Хэмжээг Size объектоор тодорхойлно.

• Size объектыг үүсгэх байгуулагч функцийн

параметр: өргөн (width), өндөр (height)

30

Page 31: лекц  4 шинэ

Жишээ:

frmSecond second = new frmSecond();

second. Size = new Size(200, 100);

second. MaximumSize = new Size(400, 200);

second. MinimumSize = new Size(100, 50);

31

Page 32: лекц  4 шинэ

• Location – формын байрлал(зүүн дээд өнцөгийн

координат)-ыг тодорхойлно, буцаана. (Control

класс)

• Байрлалыг Point объектоор тодорхойлно.

• Point объектыг үүсгэх байгуулагч функцийн

параметр: X тэнхлэгийн координат (x), Y

тэнхлэгийн координат (y)

• Дэлгэцний зүүн дээд өнцөгийн координат: 0, 0

32

Page 33: лекц  4 шинэ

• Жишээ:

frmSecond second = new frmSecond();

second.Location = new Point(20, 20);

33

Page 34: лекц  4 шинэ

• Width, Height – контролын өргөн/өндөр (Control

классын шинж)

• Top, Left, Right, Bottom, – контролын

дээд/зүүн/баруун/доод ирмэг, түүний агуулагчийн

дээд/зүүн/баруун/доод ирмэг хоѐрын хоорондох зайг

тодорхойлно, буцаана. (Control классын шинж)

• Дээрх шинжүүд нь байрлал болон хэмжээ гэсэн

шинжүүдээр тодорхойлогдоно.

– Right нь Left + Width тэнцүү

– Bottom нь Top + Height тэнцүү

34

Page 35: лекц  4 шинэ

• Bounds – Хэмжээ болон байрлалыг rectangle

объектоор тодорхойлно, буцаана.(Control класс)

• Жишээ:

frmSecond second = new frmSecond();

second.Bounds = new Rectangle(10, 10, 100, 100);

35

Page 36: лекц  4 шинэ

• Anchor – Контролыг агуулагчийн ирмэгтэй хэрхэн

бэхлэхийг тодорхойлно, буцаана. Агуулагчийг

татаж сунгахад контролын бэхэлсэн ирмэгүүдийн

зай хэвээр үлдэнэ.(Control класс)

• Жишээ:

frmSecond second = new frmSecond();

second.Bounds = new Rectangle(10, 10, 100, 100);

36

Page 37: лекц  4 шинэ

• StartPosition – формын эхэлж харагдах байрлалыг

тодорхойлно, буцаана.

• Энэ шинжийн утга нь FormStartPosition тоочих төрлийн

утгаар тодорхойлогдоно.

– CenterParent – эх цонхныхоо төвд

– CenterScreen – дэлгэцний төвд

– Manual – Location шинжид тодорхойлсон байрлалд

• Жишээ:

frmSecond second = new frmSecond();

second.StartPosition = FormStartPosition.CenterScreen;

37

Page 38: лекц  4 шинэ

• WindowsState – форм эхлээд яаж дүрслэгдэхийг

тодорхойлно.

• Энэ шинжийн утга нь FormWindowState тоочих

төрлийн утгаар тодорхойлогдоно.

– Maximized – цонх дэлгэц дүүргэгдсэн

– Minimized – цонх програмын мөр дээр хураагдсан

– Normal – цонх ердийн, өөрийн дүрслэлээр

• Жишээ:

frmSecond second = new frmSecond();

second.WindowState = FormWindowState.Maximized;

38

Page 39: лекц  4 шинэ

• ControlBox – форм дээр хяналтын буюу системийн

цэсийг харуулах эсэхийг тодорхойлно.

• Жишээ:

frmSecond second = new frmSecond();

second. ControlBox = false;

39

Page 40: лекц  4 шинэ

• MinimizeBox – форм дээр цонхыг багасгах товчийг

харуулах эсэхийг тодорхойлно.

• MaximizeBox – форм дээр цонхыг томсгох товчийг

харуулах эсэхийг тодорхойлно.

• Жишээ:

frmSecond second = new frmSecond();

second.MaximizeBox = false;

second.MinimizeBox = true;

40

Page 41: лекц  4 шинэ

• HelpButton– форм дээр тусламжийн товч

харуулах эсэхийг тодорхойлно.

• Тусламжийн товчийг харуулахын тулд MinimizeBox,

MaximizeBox товчийг харуулахгүйгээр тохируулна.

• Жишээ:

frmSecond second = new frmSecond();

second.HelpButton = true;

second.MaximizeBox = false;

second.MinimizeBox = false;

41

Page 42: лекц  4 шинэ

• Icon – формын дүрс файлыг тодорхойлно.

• Жишээ:

frmSecond second = new frmSecond();

second.Icon = new Icon(@"E:\Files\Nyamsuren\book.ico");

42

Page 43: лекц  4 шинэ

• ShowIcon – формын дүрс файлыг харуулах

эсэхийг тодорхойлно.

• Жишээ:

frmSecond second = new frmSecond();

second.Icon = new Icon(@"E:\Files\Nyamsuren\book.ico");

second.ShowIcon=false;

43

Page 44: лекц  4 шинэ

• Opacity – формын харанхуйлалыг тодорхойлно.

• Жишээ:

frmSecond second = new frmSecond();

second.Opacity = 0.1;

44

Page 45: лекц  4 шинэ

• ShowInTaskbar – форм төлвийн мөр дээр

дүрслэгдэх эсэхийг тодорхойлно.

• ТopMost – форм бусад формын үргэлж дээр нь

харагдах эсэхийг тодорхойлно.

• AcceptButton– формын зөвшөөрөх товчийг

тодорхойлно. Форм идэвхтэй үед ENTER товчийг

дарахад үзэгдэл хүлээж авах товчийг тодорхойлно.

• CancelButton– формын цуцлах товчийг

тодорхойлно. Форм идэвхтэй үед ESC товчийг

дарахад үзэгдэл хүлээж авах товчийг тодорхойлно.

45

Page 46: лекц  4 шинэ

• Аливаа форм үүсгэгч формтойгоо ямар нэг

хамааралтай байхыг эзэмшигчийн хамаарал гэж

нэрлэдэг.

• Формд эзэмшигч тодорхойлохдоо owner шинжийг

нь ашиглана.

• Формд эзэмшүүлсэн тодорхойлохдоо

ownedForms шинжийг нь ашиглана.

• Эзэмшүүлсэн форм нь үргэлж эзэмшигчийхээ дээр

байрлана.

• Эзэмшигч формыг хаахад эзэмшүүлэгч форм хамт

хаагдана.

46