2.1. Windows forms application haqida
Windows uchun boy ish stoli dasturlarini yaratadigan interfeys doirasi - Windows Forms uchun ish stoli qo'llanmasiga xush kelibsiz. Windows Forms ishlab chiqish platformasi boshqaruvni boshqarish, grafikalar, ma'lumotlarni bog'lash va foydalanuvchini kiritish kabi dasturlarni ishlab chiqish funktsiyalarining keng to'plamini qo'llab-quvvatlaydi. Windows Forms Windows Forms ilovalarini osongina yaratish uchun Visual Studio-da sudrab olib tashlash vizual dizayneriga ega. Windows Forms - bu Windows ish stoli dasturlarini yaratish uchun foydalanuvchi interfeysi. Bu Visual Studio-da taqdim etilgan vizual dizayner asosida ish stoli dasturlarini yaratishning samarali usullaridan birini taqdim etadi. Vizual boshqaruv elementlarini sudrab olib tashlash kabi funktsiyalari ish stoli dasturlarini yaratishni osonlashtiradi.
Windows Forms yordamida siz osonlikcha joylashtirilishi, yangilanishi va oflayn rejimda yoki Internetga ulanishda ishlashi oson bo'lgan grafik dasturlarni ishlab chiqasiz. Windows Forms dasturlari dastur ishlayotgan kompyuterning mahalliy apparat va fayl tizimiga kirishlari mumkin.
Dastlab 2002 yilda chiqarilgan Windows Forms - bu boshqariladigan ramka va eng qadimgi, eng ko'p ishlatiladigan ish stoli. Windows grafik qurilmasi interfeysi (GDI) dvigatelida qurilgan texnologiya. Bu Visual Studio-da foydalanuvchi interfeyslarini ishlab chiqish uchun silliq tortib olib tashlash tajribasini taqdim etadi. Shu bilan birga, Windows Forms sizning interfeysingizni rivojlantirishning asosiy usuli sifatida Visual Studio Designer-ga ishonadi, shuning uchun visual koddan tarkibiy qismlar ahamiyatsiz emas.
Quyidagi ro'yxat Windows Forms ning asosiy xususiyatlarini umumlashtiradi:
• Kod namunalari va hujjatlari ko'p bo'lgan yetuk texnologiyalar.
• Kuchli va samarali dizayner. UI ni kod orqali loyihalash unchalik qulay emas.
• Dizaynerning tortib tushirish tajribasi tufayli o'rganish oson va intuitiv.
• Har qanday Windows versiyasida qo'llab-quvvatlanadi.
• .NET Core 3.0 va undan keyingi versiyalarida qo'llab-quvvatlanadi
.NET platformasi yordamida grafik interfeyslarni yaratish uchun turli xil texnologiyalar - Window Forms, WPF, Windows Store dasturlari (Windows 8 / 8.1 / 10 uchun) qo'llaniladi. Biroq, eng sodda va qulay platforma hali ham Oyna shakllari yoki shakllaridir. Ushbu qo'llanma WinForms texnologiyasidan foydalangan holda grafik interfeyslarni yaratish tamoyillari va asosiy boshqaruv elementlarining ishlashi to'g'risida tushuncha berishga qaratilgan.
Ilovaning ko'rinishi bizga birinchi navbatda shakllar orqali ko'rinadi. Shakllar asosiy qurilish bloklari hisoblanadi. Ular turli xil boshqaruv elementlari uchun idish beradi. Voqealar mexanizmi esa shakl elementlariga foydalanuvchi ma'lumotlariga javob berishga va shu bilan foydalanuvchi bilan o'zaro aloqada bo'lishga imkon beradi.
Grafik muharririda Visual Studio-da loyihani ochishda biz formaning vizual qismini - dasturni ishga tushirgandan so'ng ko'rgan va boshqaruv panelidagi elementlarni ko'chiradigan qismni ko'rishimiz mumkin. Ammo aslida, shakl, usullar, xususiyatlar, hodisalar va boshqa narsalardan iborat kuchli funksionallikni yashiradi. Shakllarning asosiy xususiyatlarini ko'rib chiqamiz.
Agar biz dasturni ishga tushirsak, bizga bitta bo'sh shakl taqdim etiladi(2.1-rasm). Biroq, bo'sh shaklga ega bo'lgan bunday oddiy loyihada ham bir nechta tarkibiy qismlar mavjud(2.2 – rasm):
2.1-rasm. Bosh oyna. 2.2 - rasm. Dastur tarkibi.
Biz faqat shaklni ko'rishimizga qaramay, grafik dasturga kirishning boshlang'ich nuqtasi Program.cs faylida joylashgan Program sinfidir:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WinFormApp
{
static class Program
{
///
/// The main entry point for the application.
///
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
Dastlab, dastur ushbu sinfni boshqaradi, so'ngra Application.Run (yangi Form1 ()) ifodasini ishlatib, Form1 shaklini ishga tushiradi. Agar to'satdan biz ilovadagi boshlang'ich shaklni boshqasiga o'zgartirishni xohlasak, unda biz ushbu ifodadagi Form1ni mos keladigan sinf sinfiga o'zgartirishimiz kerak.
Shaklning o'zi mazmunan murakkabdir. U bir qator tarkibiy qismlarga bo'linadi. Shunday qilib, loyiha tarkibida quyidagi kabi ko'rinadigan Form1.Designer.cs fayli mavjud:
namespace WinFormApp
{
partial class Form1
{
///
/// Required designer variable.
///
private System.ComponentModel.IContainer components = null;
///
/// Clean up any resources being used.
///
///
disposing">true if managed resources should be disposed; otherwise, false.
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
///
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
///
private void InitializeComponent()
{
this.SuspendLayout();
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(515, 450);
this.Name = "Form1";
this.Text = "Form1";
this.ResumeLayout(false);
}
#endregion
}
}
Bunda Form1 formasi uchun qisman sinf e'lon qilinadi, uning ikkita usuli mavjud: Dispose (), ob'ektni destruktor vazifasini bajaradi va InitializeComponent (), shaklning xususiyatlarining dastlabki qiymatlarini belgilaydi.
Tugmalar kabi boshqaruv elementlarini qo'shganda, ularning tavsifi ham ushbu faylga qo'shiladi.
Ammo amalda biz bu sinfni kamdan-kam uchratamiz, chunki ular asosan dizayn funktsiyalarini bajaradilar - ob'ekt xususiyatlarini sozlash, o'zgaruvchilarni sozlash.
Boshqa fayl - Form1.resx - formalar manbalarini saqlaydi. Qoida tariqasida, resurslar bir vaqtning o'zida bir nechta lingvistik madaniyatlar uchun yagona shakllarni yaratish uchun ishlatiladi.
Va loyiha tarkibida oddiygina Form1 deb nomlangan Form1.cs faylida kod yoki dasturiy mantiq mavjud:
using System.Windows.Forms;
namespace WinFormApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
}
Odatiy bo'lib, faqat Form dizaynerlari mavjud, u shunchaki Form1.Designer.cs dizaynerlar faylida e'lon qilingan InitializeComponent() usulini chaqiradi. Aynan shu fayl bilan biz ko'proq ishlaymiz.
Dostları ilə paylaş: |