Matematika-informatika fakulteti


Kurs ishining dolzarbligi



Yüklə 251,21 Kb.
səhifə2/3
tarix07.01.2024
ölçüsü251,21 Kb.
#208640
1   2   3
Mahammadjonov Oybek ATD kurs ishi (1)

Kurs ishining dolzarbligi: Winforms hozirgi kunda ishlab chiqarish platformasi boshqaruvni boshqarish xatoliklarni ko`rib chiqish uchun juda qulay dastur xisoblanadi va grafiklar chizishda anchagina qo`l kelishi, ma`lumotlarni bog`lash va foydalanuvchini kiritish kabi dasturlarni ishlab chiqish funksiyalari insonyat uchun juda ham qulayligi va kerakligi bilan boshqa dasturlardan ajralib turadi.
Kurs ishining maqsadi: Ushbu kurs ishidagi Winforms hozirgi kunda ishlab chiqarish platformasi boshqaruvni boshqarish, grafiklar, ma`lumotlarni bog`lash va foydalanuvchini kiritish kabi dasturlarni ishlab chiqish funksiyalarini o`z ichiga jamlaganlidan Winforms ni yaxshiroq o`rganishga da`vat qilish. Eng asosiysi bu dasturni o’rganish va shular asosida misollar ishlash.
Kurs ishining ob’yekti: WinForms dan foydalangan holda grafiklar chizish va Visual Studio dizayner qismi WPF dan ko`ra WinForms uchun yaxshiroqligi haqida o’quvchilarga ma’lumot berishdan iborat.

1-§.Windows Formsga kirish
WinForm (Windows form .Net) – bu UI framework bo`lib kompyuter dasturlarini yaratishda foydalaniladi. Ishlab chiqish platformasi boshqaruvni boshqarish, grafikalar, ma'lumotlarni bog'lash va foydalanuvchini kiritish kabi dasturlarni ishlab chiqish funksiyalarini o`zida jamlagan. WinForm Visual Studio orqali formaga komponentlarni osongina tashlash va ularni qo`zg`atish orqali kerakli joyga joylashtirib visual dizayn yaratish mumkin.
AFZALLIKLARI:

  • Bu ancha eski va ko'p bora ishlatilgan va sinalgan

  • Allaqachon 3-tomon kontrollari bilan boy bo'lib, tekin yoki sotib olish uchun tayyor

  • Visual Studio dizayner qismi WPF dan ko'ra WinForms uchun yaxshiroq, WPF da ko'p ishlarni o'zingiz qilishingizga to'g'ri keladi

.NET platformasidan foydalangan holda grafik interfeyslarni yaratish uchun turli texnologiyalar qo'llaniladi - Window Forms, WPF, UWP. Biroq, eng oddiy va eng qulay platforma yaratish tamoyillari va asosiy boshqaruv elementlarining ishlashi haqida tushuncha berishga qaratilgan.


Grafik C# ilovalarini yaratish uchun biz bepul va to'liq xususiyatli ishlab chiqish muhitidan foydalanamiz - Visual Studio Community 2022, uni quyidagi manzildan yuklab olish mumkin: https://www.visualstudio.com/en-us/downloads.


hali ham Window Forms yoki qisqacha WinForms hisoblanadi. Ushbu qo'llanma WinForms texnologiyasidan foydalangan holda grafik interfeyslarn

Visual Studio'ga Windows Forms va C# va .NET 6 uchun loyihani qo'llab-quvvatlashni qo'shish uchun faqat Setup'dagi ish yuklarida .NET Desktop Development ni tanlashingiz kerak. Siz ko'proq variantlarni yoki umuman barcha variantlarni tanlashingiz mumkin, ammo siz qattiq diskingizdagi bo'sh hajmni hisobga olishingiz kerak - qancha ko'p variantni tanlasangiz, disk maydoni shunchalik ko'p bo'ladi.



Muhit va uning barcha komponentlarini o'rnatgandan so'ng, Visual Studio dasturini ishga tushiramiz va grafik dastur loyihasini yaratamiz. Bosh ekranda Yangi loyiha yaratish (Yangi loyiha yaratish) ni tanlang.




Shuni ta'kidlash joizki, andozalar orasida Windows Forms App (.NET Framework) turini ham ko'rishingiz mumkin - uni tanlash shart EMAS, sizga Windows Forms ilovasi turi kerak.

Keyinchalik, keyingi bosqichda bizdan loyiha nomini va loyiha joylashgan katalogni ko'rsatish so'raladi.



Loyiha nomi maydonida loyihaga nom bering. Mening holimda bu HelloApp.

Keyingi oynada Visual Studio bizdan loyiha uchun foydalaniladigan .NET versiyasini tanlashni taklif qiladi. Odatiy bo'lib, hozirda tanlangan so'nggi versiya .NET 6.0. Loyihani yaratish uchun qoldiring va Yaratish tugmasini bosing.



Shundan so'ng, Visual Studio loyihamizni sukut bo'yicha yaratilgan fayllar bilan ochadi:

O'ng tomonda Solution Explorer oynasi joylashgan bo'lib, unda siz loyihamizning tuzilishini ko'rishingiz mumkin. Bunday holda, bizda standart yaratilgan tuzilma mavjud:

Bog'liqliklar - bu tugun loyihaga sukut bo'yicha qo'shilgan dll yig'ilishlarini o'z ichiga oladi. Ushbu assambleyalar faqat C# ishlatadigan .NET kutubxona sinflarini o'z ichiga oladi


Keyin loyihadagi yagona shakl fayli - Form1.cs keladi, u sukut bo'yicha markaziy oynada ochiladi:



1
2
3
4
5
6
7
8
9
10

namespace HelloApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
}

Shakl sinfi - Form1 grafik shaklni ifodalaydi - aslida biz loyiha boshlanganda ekranda ko'radigan oyna.


Ushbu sinf qisman (qisman modifikator bilan) sifatida aniqlanadi va shakllarning asosiy funksionalligini o'z ichiga olgan o'rnatilgan Form sinfidan meros bo'lib qoladi.


Form1 sinfining o'zida sukut bo'yicha faqat konstruktor aniqlanadi, bu erda InitializeComponent() usuli chaqiriladi, bu konstruktor faylidan shakl komponentlarini ishga tushiradi.


Ushbu elementning yonida siz boshqa shakl faylini ko'rishingiz mumkin - Form1.Designer.cs. Bu dizayner fayli - u grafik dizaynerda shaklga qo'shilgan shakl komponentlarining ta'rifini o'z ichiga oladi va aynan uning kodi InitializeComponent() ga qo'ng'iroq orqali yuqorida uzatiladi.


Program.cs ilovaga kirish nuqtasini belgilaydi:



1
2
3
4
5
6
7
8
9
10
11
12

namespace HelloApp
{
internal static class Program
{
[STAThread]
static void Main()
{
ApplicationConfiguration.Initialize();
Application.Run(new Form1());
}
}
}

Ushbu faylda Program sinfi mavjud. C# dasturining bajarilishi Main usulidan boshlanadi. Va shunga o'xshash usul faqat Dastur sinfida aniqlangan.

Main usuli [STAThread] atributi bilan taʼminlangan. Ushbu atribut, taxminan, Windows komponentlarining to'g'ri ishlashi uchun zarurdir. Usulning o'zida usul birinchi bo'lib chaqiriladi





1

ApplicationConfiguration.Initialize()

ba'zi bir asosiy dastur konfiguratsiyasini o'rnatadi


Keyin usul chaqiriladi





1

Application.Run(new Form1());

sukut bo'yicha ko'rsatilgan shakl ob'ekti o'tkaziladi.


Ya'ni dasturni ishga tushirganimizda Main usuli ishlaydi, bunda Application.Run(new Form1()) usuli chaqiriladi, buning yordamida ekranda Form1 ni ko'ramiz.



2-§. OpenFileDialog va SaveFileDialog elementlari bilan ishlash.

Faylni ochish va saqlash uchun Windows tizimi OpenFileDialog va SaveFileDialog sinflari bilan ifodalanadi. Ular juda ko'p o'xshash funktsiyalarga ega, shuning uchun ularni birgalikda ko'rib chiqaylik.


OpenFileDialog va SaveFileDialog bir qator xususiyatlarga ega, ular orasida quyidagilar:


DefaultExt: agar foydalanuvchi fayl nomini kengaytmasiz kiritsa, sukut bo'yicha qo'shiladigan fayl kengaytmasini o'rnatadi


AddExtension: Agar rost boʻlsa, fayl nomi yoʻq boʻlsa, unga kengaytma qoʻshadi. Kengaytma DefaultExt yoki Filter xususiyatidan olingan


CheckFileExists: agar rost bo'lsa, berilgan nomli fayl mavjudligini tekshiradi


CheckPathExists: Agar rost boʻlsa, berilgan nomdagi faylga yoʻl mavjudligini tekshiradi


FileName: dialog oynasida tanlangan faylning to'liq nomini qaytaradi


Filtr: Muloqot oynasidagi kengaytmalar bo'yicha fayllarni filtrlash uchun fayl filtrini belgilaydi. Filtr quyidagi formatda ko'rsatilgan File_name|*.extension. Masalan, Matn fayllari(*.txt)|*.txt. Siz bir vaqtning o'zida bir nechta filtrlarni o'rnatishingiz mumkin, buning uchun ular vertikal chiziq bilan ajratilgan |. Masalan, Bitmap fayllari (*.bmp)|*.bmp|Tasvir fayllari (*.jpg)|*.jpg


InitialDirectory: oyna birinchi marta chaqirilganda ko'rsatiladigan katalogni o'rnatadi





Endi forma kodini o'zgartiramiz:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
button1.Click += button1_Click;
button2.Click += button2_Click;
openFileDialog1.Filter = "Text files(*.txt)|*.txt|All files(*.*)|*.*";
saveFileDialog1.Filter = "Text files(*.txt)|*.txt|All files(*.*)|*.*";
}
// сохранение файла
void button2_Click(object sender, EventArgs e)
{
if (saveFileDialog1.ShowDialog() == DialogResult.Cancel)
return;
// получаем выбранный файл
string filename = saveFileDialog1.FileName;
// сохраняем текст в файл
System.IO.File.WriteAllText(filename, textBox1.Text);
MessageBox.Show("Файл сохранен");
}
// открытие файла
void button1_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.Cancel)
return;
// получаем выбранный файл
string filename = openFileDialog1.FileName;
// читаем файл в строку
string fileText = System.IO.File.ReadAllText(filename);
textBox1.Text = fileText;
MessageBox.Show("Файл открыт");
}
}

Birinchi tugmani bosish orqali faylni ochish oynasi ochiladi. Fayl tanlagandan so'ng u o'qiladi va matn maydonida uning matni ko'rsatiladi. Ikkinchi tugmani bosish faylni saqlash uchun oynani ko'rsatadi, unda siz uning nomini belgilashingiz kerak. Va shundan so'ng matn maydonidagi matn faylga saqlanadi.


3-§. FontDialog va ColorDialog elementlari bilan ishlash.
FontDialog
FontDialog shrift va uning parametrlarini tanlash uchun ishlatiladi. Undan foydalanish uchun komponentni Asboblar panelidan formaga o'tkazamiz. Va formada tugma tugmasi bo'lsin1. Keyin forma kodiga quyidagilarni yozamiz:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
button1.Click += button1_Click;
// добавляем возможность выбора цвета шрифта
fontDialog1.ShowColor = true;
}
void button1_Click(object sender, EventArgs e)
{
if (fontDialog1.ShowDialog() == DialogResult.Cancel)
return;
// установка шрифта
button1.Font = fontDialog1.Font;
// установка цвета шрифта
button1.ForeColor = fontDialog1.Color;
}
}

FontDialog bir qator xususiyatlarga ega, ular orasida quyidagilarni ta'kidlash kerak:

ShowColor: Agar rost boʻlsa, shrift rangini tanlash imkonini beradi


Shrift: dialog oynasida tanlangan shrift


Rang: dialog oynasida tanlangan shrift rangi


Dialog oynasini ko'rsatish uchun ShowDialog() usuli qo'llaniladi.


Va agar biz dasturni ishga tushirsak va tugmani bossak, biz barcha shrift parametrlarini o'rnatishimiz mumkin bo'lgan dialog oynasini ko'ramiz. Va tanlagandan so'ng, o'rnatilgan sozlamalar tugma shriftiga qo'llaniladi:





ColorDialog


ColorDialog sizga rang parametrlarini tanlash imkonini beradi. Biz uni asboblar panelidan formaga ham o'tkazamiz. Va shakl kodini o'zgartiring:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
button1.Click += button1_Click;
// расширенное окно для выбора цвета
colorDialog1.FullOpen = true;
// установка начального цвета для colorDialog
colorDialog1.Color = this.BackColor;
}
void button1_Click(object sender, EventArgs e)
{
if (colorDialog1.ShowDialog() == DialogResult.Cancel)
return;
// установка цвета формы
this.BackColor = colorDialog1.Color;
}
}

ColorDialog xususiyatlari orasida quyidagilarni ta'kidlash kerak:



FullOpen: Agar rost ga o'rnatilgan bo'lsa, rang tanlash uchun kengaytirilgan sozlamalar bilan dialog oynasi ko'rsatiladi

SolidColorOnly: Agar rost ga oʻrnatilgan boʻlsa, faqat bitta ohang ranglarini tanlash imkonini beradi


Rang: dialog oynasida tanlangan rang


Va tugma bosilganda, biz shakl rangini o'rnatishimiz mumkin bo'lgan dialog oynasini ko'ramiz:





XULOSA


XXI asrni kompyuter asri deb bekorga aytishmagan ekan. Men bu kurs ishimni bajarish davomida kompyuter texnikasida Winformsni bir-nechata afzalliklarini bilib oldim.Ulardan quyidagilar


 Bu ancha eski va ko'p bora ishlatilgan va sinalgan;
 Allaqachon 3-tomon kontrollari bilan boy bo'lib, tekin yoki sotib olish uchun tayyor;
 Visual Studio dizayner qismi WPF dan ko'ra WinForms uchun yaxshiroq, WPF da ko'p ishlarni o'zingiz qilishingizga to'g'ri keladi.
C# Windows muhitida ishlaydigan dastur tuzish uchun qulay vosita bo`lib, kompyuterda dastur yaratish ishlarini avtomatlashtiradi, xatoliklarni kamaytiradi va dastur tuzuvchi mehnatini yengillashtiradi. C# dasturi zamonaviy visual loyihalash texnologiyasi asosida ob`yektga yo`naltirilgan dasturlash tili hisoblanadi.
Hozirgi kunda C# dasturlash tili yuqori bosqichli dasturlash tillari ichida eng samaralisi hisoblanadi. Bu til C va C++ dasturlash tillarining mantiqiy davomi bo’lib, Java dasturlash tilining ham bir qancha imkoniyatlarini o’zida mujassamlashtiradi. Bugunga kelib, juda ko’p rivojlangan davlatlarda ishlab chiqarilayotgan dasturlar asosini C# dasturlash tili tashkil qiladi.
Bu kurs ishini tayyorlash jarayonida C# dasturlash tili haqida umumiy malumotlarni, qanday shakllangan va bugungi kungacha rivojlanish yo’lini o`rganib chiqdim. Visual Studioda ishlashni va bunda consol va windows dasturlarni yaratishni shu bilan birgalikda dastur tuzish uchun kerak bo`ladigan Windows Forms komponentlari va dasturlash tilining operatorlari ya`ni takrorlanuvchi, shartli va shartsiz o`tuvchi operatorlar haqida batafsil o`rgandim. Bulardan amaliy dasturlarni tuzishda qanday holatlarda foydalanishni amaliyotda ko`rib chiqdim. Yana shu o`rinda aytish lozimki kurs ishi mobaynida consol va windows dasturlarni bir-biridan farqini o`rganib oldim. Umumiy qilib aytganda bu turdagi dasturlarni C# da yaratish haqida yanada to`liqroq o`rgandim va malumotlarga ega bo`ldim.


Yüklə 251,21 Kb.

Dostları ilə paylaş:
1   2   3




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2025
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin