O’zbekiston respublikasi oliy va o’rta maxsus ta’lim vazirligi farg’ona davlat universiteti fizika-matematika fakulteti



Download 28,15 Kb.
bet2/2
Sana31.12.2021
Hajmi28,15 Kb.
#228656
1   2
Bog'liq
Checkbox

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;

namespace Toxtasinova
{
    public partial class MainForm : Form
    {
        private System.Windows.Forms.CheckBox boldCheckBox;
        private System.Windows.Forms.CheckBox italicCheckBox;
        private System.Windows.Forms.Label outputLabel;
        private System.ComponentModel.IContainer components;
        public MainForm()
        {
            InitializeComponent();
            Application.Run( new MainForm() );
        }
        void BoldCheckBoxCheckedChanged(object sender, EventArgs e)
        {
            outputLabel.Font =new Font( outputLabel.Font.Name,outputLabel.Font.Size,outputLabel.Font.Style ^ FontStyle.Bold );
        }
        void ItalicCheckBoxCheckedChanged(object sender, EventArgs e)
        {
            outputLabel.Font =new Font( outputLabel.Font.Name,outputLabel.Font.Size,outputLabel.Font.Style ^ FontStyle.Italic );
        }
    }
}



Komponentlarni yaratgandan so'ng, ularning voqea ishlovchilarini aniqlaymiz. BoldCheckBox-ni ikki marta bosish bo'sh CheckedChanged voqea ishlovchilarini yaratadi va ro'yxatdan o'tkazadi. Voqealar ishlovchisiga qo'shilgan kodni tushunish uchun avval outputLabel'S Font xususiyatini muhokama qilamiz.

Shriftni o'zgartirish uchun Font xossasini Font ob'ektiga o'rnatish kerak. Biz foydalanadigan Shrift konstruktori shrift nomini, o'lchamini va uslubini oladi. Birinchi ikkita argument outputLabel's Font ob'ektidan foydalanadi, ya'ni outputLabel.Font.Name va outputLabel.Font.Size. Ushbu uslub FontStyle sanashning a'zosi bo'lib, unda Regular, Bold, Italic, Strikeout va Underline shrift uslublari mavjud. (Strikeout uslubi matnni chiziq orqali, pastki chiziq chizig'idagi matnni aks ettiradi.) Shrift ob'ekti yaratilganida Font ob'ekti Style xususiyati o'rnatiladi - Style xossasining o'zi faqat o'qish uchun mo'ljallangan.

Uslublarni bitli operatorlar yoki bitlarda manipulyatsiya bajaradigan operatorlar yordamida birlashtirish mumkin. 1-bobdan eslang, barcha ma'lumotlar kompyuterda 0 va 1 ning ketma-ketligi sifatida namoyish etiladi. Har bir 0 yoki 1 bit deb nomlanadi. Ushbu bit qiymatlari yordamida harakatlar amalga oshiriladi va ma'lumotlar o'zgartiriladi. Ushbu dasturda biz shrift uslubini o'rnatishimiz kerak, shunda matn dastlab qalin bo'lmagan bo'lsa va aksincha. E'tibor bering, 60-satrda biz buni amalga oshirish uchun bitli XOR operatoridan (^) foydalanamiz. Ushbu operatorni ikkita bitga tatbiq etish quyidagilarni amalga oshiradi: Agar mos bitlardan bittasi 1 ga teng bo'lsa, natijani 1 ga o'rnating. 60-qatorda bo'lgani kabi ^ operatoridan foydalanib biz qalin harflar uchun bit qiymatlarini bir xil qilib o'rnatamiz. yo'l. O'ng tomondagi operand (FontStyle.Bold) har doim qalin qilib bit qiymatlariga ega. Olingan uslub qalin bo'lishi uchun chapdagi operand, keyin (outputLabel.Font.Style) qalin bo'lmasligi kerak. (XOR uchun esda tuting, agar bitta qiymat 1 ga o'rnatilgan bo'lsa, ikkinchisi 0 ga teng bo'lishi kerak, yoki natija 1 bo'lmaydi.) Agar outputLable.Font.Style qalin bo'lsa, natijada olingan uslub qalin bo'lmaydi. Ushbu operator shuningdek, uslublarni birlashtirishga imkon beradi. Masalan, agar matn dastlab italyancha bo'lsa



harflar bilan yozilgan bo'lsa, endi shunchaki qalin emas, balki kursiv va qalin bo'ladi.

Mavjud uslubni aniq sinovdan o'tkazib, uni kerakli narsaga qarab o'zgartirishimiz mumkin edi. Masalan, boldCheckBox_CheckChanged usulida biz odatiy uslubni sinab ko'rgan bo'lar edik, uni qalin qilib, qalin uslub uchun sinab ko'rdik, odatiy holga keltirdik, kursiv uslubi uchun, qalin kursiv yoki italik qalin uslubi bilan uni kursiv qilib qo'ydik. . Biroq, bu usulning kamchiliklari bor - har bir yangi uslub uchun biz kombinatsiyalar sonini ikki baravar oshiramiz. Belgilangan katakchani belgilash uchun biz sakkizta uslubni sinab ko'rishimiz kerak. Stroekut uchun katakchani qo'shish uchun har bir voqea ishlovchisida 16 ta sinov mavjud edi. Bitsel XOR operatoridan foydalanib, biz o'zimizni ushbu muammolardan qutqaramiz. Har bir yangi uslubga voqea ishlovchilarida faqat bitta gap kerak. Bunga qo'shimcha ravishda, uslublar osongina olib tashlanishi mumkin, ularning ishlov beruvchisi olib tashlanadi. Agar biz har bir shart uchun sinovdan o'tgan bo'lsak, ishlov beruvchini va boshqa ishlovchilardagi barcha keraksiz sinov sharoitlarini olib tashlashimiz kerak edi.
Download 28,15 Kb.

Do'stlaringiz bilan baham:
1   2




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
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