O’zbekiston respublikasi oliy va o’rta maxsus ta’lim vazirligi mirzo ulug’bek nomidagi o’zbekiston milliy universiteti matematika fakulteti



Download 352,39 Kb.
bet7/8
Sana13.12.2022
Hajmi352,39 Kb.
#884990
1   2   3   4   5   6   7   8
Bog'liq
MI-2011 talabasi Murtazayev Ulug\'bek KURS ishi

WPF da kalkulator yaratish
Ushbu qo'llanmada biz Visual Studio dasturida WPF C #dasturlash tili yordamida oddiy kalkulyatorni yaratamiz.
Darsning maqsadi –
1.C #yordamida WPF dasturida to'liq kalkulyator yarating.
2.Kalkulyatorni yaratish uchun XAML va C #dasturlaridan foydalaning
3.Matnlarni uslublash uchun Matn qutilari va tarkibni moslashtirishdan foydalaning
4.Dinamik yorliqlardan foydalaning va to'g'ridan-to'g'ri koddagi qiymatlarni o'zgartiring
5.Qo'shish, ayirish, ko'paytirish va bo'lishni bajarish uchun kalkulyatorga 4tugmachaniqo'shing
6.Tugmalarga 4 ta voqeani qo'shingIplarni ikki baravarga aylantirish va hisob-kitoblarniyakunlash
7. O'nli raqamlarni yaxlitlash va yorliqda ko'rsatish
XML kodlari orqali dastur elementlarimizni shaklga qo'shishni boshlaymiz.
 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
 
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
 
xmlns:local="clr-namespace:calculations"
 
mc:Ignorable="d"
 
Title="MainWindow" Height="450" Width="800">
 

 

 

Yuqorida bo'sh XML kodlari mavjud.Biz unga tarkibiy qismlarni qo'shishni boshlaymiz, lekin avval dasturning nomini o'zgartirishimiz kerak.
 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
 xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
 xmlns:local="clr-namespace:calculations"
 mc:Ignorable="d"
 Title="WPF Calculations" Height="450" Width="800">
 


Title = "MainWindow" qatori uni Title = "WPF Calculations" ga o'zgartiradi, bu ilovalar sarlavhasini o'zgartiradi. Asosiy komponentlar dasturga grid… / grid teglari orqali qo'shiladi.Biz kiritadigan barcha narsalar ushbu yorliq ichiga kirishi kerak.
 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
 xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
 xmlns:local="clr-namespace:calculations"
 mc:Ignorable="d"
 Title="WPF Calculations" Height="450" Width="800">
 
 
 00


 00
 

 

6-rasm
Agar siz pozitsiyalarni keyinroq o'zgartirishni xohlasangiz, yorliqni yoki matn qutilarini turli joylarga sudrab borishingiz mumkin.Hozircha biz uni qanday bo'lsa shunday qoldirishimiz mumkin.Tugmalarni qo'shishni boshlaymiz.
 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
 xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
 xmlns:local="clr-namespace:calculations"
 mc:Ignorable="d"
 Title="WPF Calculations" Height="450" Width="800">
 

“extAlignment="Center"Name="numerA"
Margin="224,127,508,266" Width="60" Height="30">00

TextAlignment="Center"Name="numerB"
Margin="490,127,242,266" Width="60" Height="30">00







Kodning yuqorisida biz dasturga 4 xil tugmachani qo'shmoqdamiz.Ko'rib turganingizdek, barcha tugmachalarning chekkalari bundan mustasno.Ularning barchasi forma bo'ylab gorizontal ravishda tekislanadi.Matn tugmachalarida "Qo'shish, ayirish, ko'paytirish va bo'linish" yoziladi. Har bir tugmachada ularga biriktirilgan voqea bo'ladi va biz hammasini qisqa vaqt ichida qo'shamiz.
7-rasm
Bu formada bajarilgan barcha 4 tugmachalarning skrinshotidir.
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:calculations"
mc:Ignorable="d"
Title="WPF Calculations" Height="450" Width="800">


TextAlignment="Center" Name="numerA"
Margin="224,127,508,266" Width="60" Height="30">00

TextAlignment="Center" Name="numerB"
Margin="490,127,242,266" Width="60" Height="30">00








 
Shaklga yana ikkita yorliq qo'shishimiz kerak. Ulardan biri matn natijasini, ikkinchisi esa natijalarni forma ko'rinishida ishlatishda ishlatiladi.
Label VerticalAlignment = "Bottom" FontSize = "32 ″ HorizontalAlignment =" Center "Margin =" 290,0391,0 ″ Natijalar / Yorliq
Ushbu yorliq ekranda matn natijalarini ko'rsatish uchun ishlatiladi.
Yorliq nomi = "natija" VerticalAlignment = "Bottom" FontSize = "32 ″ HorizontalAlignment =" Center "Margin =" 420,0,328,0 ″ Width = "140 ″ 00 / Label.E'tibor bering, ushbu yorliqda unga ism biriktirilgan, biz yorliqni koddan boshqarish uchun foydalanamiz.
8-rasm
Bu shaklning yakuniy natijasidir.Barcha elementlar qo'shildi, endi biz tugmachalarni voqealarga bog'lashimiz kerak bo'ladi.Barcha tugmalar ekranga qo'shilganligi sababli, tugmachalarga ba'zi voqealarni qo'shish vaqti keldi.Biz voqealarni to'g'ridan-to'g'ri XML faylidan tugmalarga qo'shishimiz mumkin.
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:calculations"
mc:Ignorable="d"
Title="WPF Calculations" Height="450" Width="800">
 

TextAlignment="Center" Name="numerA"
Margin="224,127,508,266" Width="60" Height="30">00

TextAlignment="Center" Name="numerB"
Margin="490,127,242,266" Width="60" Height="30">00









Shaklga ba'zi voqealarni qo'shish vaqti keldi.Tugma kengligi = "60 ″ balandlik =" 20 ″ chekka = "224,278,508,125 ″ tugmachani bosish =" raqamlarni qo'shish "qo'shish / tugmaE'tibor bering, biz tugma yorlig'i ichida Click = "AddingNumbers" deb nomlangan yangi xususiyatni qo'shdik. Bu shuni anglatadiki, tugma qachon bosiladi, bu raqamni qo'shish funktsiyasini ishga tushiradi.Boshqa tugmachalarda ularga o'xshash hodisalar mavjud.Bu erda ko'rib turganingizdek, ularni qayd etganingizga ishonch hosil qiling, chunki ular kichik harflarga sezgir.

(9-rasm)
Bizning C #skriptimiz biz uchun mavjudligini tekshirish uchun, yuqoridagi o'ng tomondagi yorliqni MainWindow.xaml.cs yorlig'ini bosing va u ushbu dasturga biriktirilgan c #skriptini ochishi kerak.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace calculations
{
///
/// Interaction logic for MainWindow.xaml
///

public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
}
}
10-rasm
Ilgari biz tugmachalarga Click voqealarini qo'shdik, AddingNumbers matnini o'ng tugmasini bosing va Definition-ga o'tish-ni bosing. Buni amalga oshirgandan so'ng, u voqealarni C #skriptiga qo'shadi. Boshqa tadbirlar uchun ham xuddi shunday qiling va u ularga qo'shiladi.Agar biron bir sababga ko'ra voqealar avtomatik ravishda qo'shilmasa, ularni o'sha erda yozishingiz mumkin.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace calculations
{
///
/// Interaction logic for MainWindow.xaml
///

public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
 
}
private void AddingNumbers(object sender, RoutedEventArgs e)
{


}
private void SubtractNumbers(object sender, RoutedEventArgs e)
{
 
}
 
private void MultiplyNumbers(object sender, RoutedEventArgs e)
{
 
}
 
private void DivideNumbers(object sender, RoutedEventArgs e)
{
 
}
}
}
Yuqoridagi kodda barcha hodisalar kodga qo'shilgan.Endi biz ushbu kalkulyatorni ishlashi uchun juda muhim kodni qo'shamiz.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
 
namespace calculations
{
///
/// Interaction logic for MainWindow.xaml
///

public partial class MainWindow : Window
{
 
double num1; // this is double data type number called num1
double num2; // this is double data type number called num2
double totalNumber; // this is the double data number called totalNumber this will be used to show the total calculation
 
public MainWindow()
{
InitializeComponent();
 
}
 
private void AddingNumbers(object sender, RoutedEventArgs e)
{
 
}
 
private void SubtractNumbers(object sender, RoutedEventArgs e)
{
 
}
 
private void MultiplyNumbers(object sender, RoutedEventArgs e)
{
 
}
 
private void DivideNumbers(object sender, RoutedEventArgs e)
{
 
}
}
}
biz o'nlik raqamlardan foydalanamiz.
private void AddingNumbers(object sender, RoutedEventArgs e)
{
num1 = Convert.ToDouble(numberA.Text); // catch the text from the number A text box and convert to a double data type
num2 = Convert.ToDouble(numberB.Text); // catch the text from the number B text box and convert to a double data type
totalNumber = num1 + num2; // add the two numbers together and place them in the total number variable
result.Content = totalNumber.ToString(); // show the total number on the result label
}
Yuqorida raqamlarni qo'shish funktsiyasi berilgan. num1 = Convert.ToDouble (numberA.Text); Ushbu satr matnni A sonidagi matn satridan ma'lumotlarning er-xotin turiga o'zgartiradi va num1 o'zgaruvchisi ichida saqlaydi.
num2 = Convert.ToDouble (numberB.Text); Ushbu satr B sonli matn maydonidagi matnni ikki qavatli ma'lumot turiga o'zgartiradi va num2 o'zgaruvchisi ichida saqlaydi.
Keyin biz hisob-kitoblarni bajarish uchun num1 va num2 dan foydalanamiz. Matn qutilarining ikkalasini ham kiritganimizdan so'ng, biz umumiy son o'zgaruvchisidan foydalana olamiz va ikkala sonni ham qo'shamiz.totalNumber = num1 + num2; Ushbu kod satri ikkala raqamni ham qo'shadi va ularni umumiy son o'zgaruvchisi ichida saqlaydi.result.Content = totalNumber.ToString (); Ushbu qatorda natija deb nomlangan yorliq topiladi va unga umumiy sonli tarkib qo'shiladi. Umumiy son o'zgaruvchisining ToString () uchidan foydalanishimiz sababi.To string buyrug'i shuni anglatadiki, u umumiy son o'zgaruvchisidan qiymatlarni matnga aylantirish uchun matnga aylantirish uchun oladi, shunda biz uni formada ko'rsatamiz.
11-rasm


Xulosa
O'zbekiston mustaqillikka erishgadan so'ng davlatimizning asosiy qonuni - Konstitutsiyamizga ega bo'ldik. Vaqt o'tishi bilan hukumatimiz rahbarining O'zbekistonda “Kadrlar tayyorlash milliy dasturi” va “Axborot texnologiyalari sohasida kadrlar tayyorlash tizimini takomillashtirish” qarorlari alohida o'rin tutadi. Dasturda e'tirof etilgan kadrlar tayyorlash tizimini rivojlantirishning asosiy yo'nalishlarida shu narsa alohida belgilandiki, ta'lim tizimini yaxlit axborotlashtirish hozirgi zamon talablariga muvofiqlashuvini ta'minlaydi. Bu dasturni o'tgan davr mobaynida sarhisob qilib, ularning eng muhim xususiyatlaridan biri sifatida hozirgi ta'lim dasturida nazarda tutilayotgan zamonaviy axborot texnologiyalari, ta'limni kompyuterlashtirish va kompyuterlash tarmoqlari tizimida ta'lim jarayonini axborot bilan ta'minlashni yanada rivojlantirishni nazarda tutmoqdamiz. Zero, Milliy dasturni ro'yobga chiqarishga doir tashkiliy ishlarda e'tirof etilganidek, “Ta'limni axborot bilan ta'minlash tizimini shakllantirishva rivojlantirish, uni jahon axborot tizimi bilan bog'lash, ommaviy axborot vositalarining ta'lim sohasidagi vazifalarini belgilash” malakali mutaxassislarni tayyorlashning muhim mezonlaridan biridir. Hozirgi zamonda yurtimizda Axborat Texnologiyalarini rivojlantirish yo‘lida juda ko‘p ishlar amalga oshirilmoqda. Bu borada davlatimiz ko‘p ishlarni amalga oshirmoqda. Xususan ko‘p joylarga dasturlash orqali ko‘p loyihalarni oson va qulay bajarilyapti.
Ushbu kurs ishimda mavzuyimni ochib berishga harakat qilganman. Ushbu kurs ishimda ochib berilgan mavzular kelajakda talabalarga ko’proq darajada xizmat qiladi degan umiddaman. Hozirgi kunda dasturlash juda tez tarzda rivojlanib bormoqda. Biz bemalol XXI asr axborot texnologiyalari asri deya olamiz. Shu sababli bizni yurtimizda ham axborot texnologiyalariga, dasturlar yaratishga, dasturchilarni ko’paytirishga keng e’tibor berilmoqda. Biz bu imkoniyatlardan keng foydalangan holda kelajak texnologiyalarini yaratib, O’zbekiston nomini dunyoga mashhur qilishga harakat qilamiz. O’ylaymanki, qilgan ishlarimiz kelajakda yurtimizda dasturlash texnologiyasi rivojlanishiga o’z hissasini qo’shadi degan umiddaman.



Download 352,39 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2025
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish