C# мисоллар


-расм. Дастур интерфейси Қуйидаги 4.9-листинг



Download 0,91 Mb.
bet39/52
Sana24.02.2022
Hajmi0,91 Mb.
#215341
1   ...   35   36   37   38   39   40   41   42   ...   52
Bog'liq
C# windows app form

4.9-расм. Дастур интерфейси
Қуйидаги 4.9-листингда ушбу дастурнинг коди келтирилган:

4.9 листинг. Матнли файлни чоп қилиш

// Дастур матнли файлни стандарт мулокот ойнаси оркали укиб олиб,
// унинг мазмунини матнли майдонга факат укиш (ReadOnly) учун очади
// ва уни принтерга чоп килади
using System;
using System.Drawing;
using System.Windows.Forms;

namespace TxtPrint


{
public partial class Form1 : Form
{
System.IO.StreamReader Reader;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
this.Text = "Матнли файлни очиш ва чоп этиш";
textBox1.Multiline = true;
textBox1.Clear();
textBox1.Size = new Size(268, 112);
textBox1.ScrollBars = ScrollBars.Vertical;
textBox1.ReadOnly = true;
// Файл укиб тулик юклангунча менюнинг,
// "Печать..." кисми куринмаслиги лозим.
печатьToolStripMenuItem.Visible = false;
openFileDialog1.FileName = null;
}
private void открытьToolStripMenuItem_Click(
Object sender, EventArgs e)
{
// Менюнинг "Очиш" кисми танланганда:
openFileDialog1.Filter =
"(*.txt)|*.txt|All files (*.*)|*.* матнли файллар";
openFileDialog1.ShowDialog();
if (openFileDialog1.FileName == null) return;
try
{
// Файлдан маълумотларни укиб олиш учун StreamReader объекти
Reader = new System.IO.StreamReader(
openFileDialog1.FileName,
System.Text.Encoding.GetEncoding(1251));
// - Win1251 кодировкадан фойдаланиш
textBox1.Text = Reader.ReadToEnd();
Reader.Close();
печатьToolStripMenuItem.Visible = true;
}
catch (System.IO.FileNotFoundException Holat)
{
MessageBox.Show(Holat.Message +
"\nБундай файл мавжуд эмас", "Хатолик",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
catch (Exception Holat)
{
// Бошка турдаги хатолик:
MessageBox.Show(Holat.Message, "Хатолик",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
}
private void печатьToolStripMenuItem_Click(object sender, EventArgs e)
{
// "Чоп этиш"
try
{
Reader = new System.IO.StreamReader(
openFileDialog1.FileName,
System.Text.Encoding.GetEncoding(1251));
// - Win1251 кодировкадан фойдаланиш
try
{
printDocument1.Print();
}
finally
{
Reader.Close();
}
}
catch (Exception Holat)
{
MessageBox.Show(Holat.Message);
}
}
private void printDocument1_PrintPage(object sender,
System.Drawing.Printing.PrintPageEventArgs e)
{
Single SatrSoni = 0.0F;
Single Y = 0;
var ChapTomon = e.MarginBounds.Left;
var YuqoriTomon = e.MarginBounds.Top;
var Satr = String.Empty;
var Shrift = new Font("Times New Roman", 12.0F);
// Битта сахифадаги сатрлар сонини аниклаш
SatrSoni = e.MarginBounds.Height /
Shrift.GetHeight(e.Graphics);
// Хар бир сатрни чоп этиш
var i = 0; // - сатрлар сони
while (i < SatrSoni)
{
Satr = Reader.ReadLine();
if (Satr == null) break; // циклдан чикиш
Y = YuqoriTomon + i *
Shrift.GetHeight(e.Graphics);
// Сатрни чоп этиш
e.Graphics.DrawString(Satr, Shrift, Brushes.Black,
ChapTomon, Y, new StringFormat());
i = i + 1; // ёки i += 1
}
// Кейинги сахифани чоп этиш
if (Satr != null) e.HasMorePages = true;
else e.HasMorePages = false;
}
private void выходToolStripMenuItem_Click(
object sender, EventArgs e)
{
// Дастурдан чикиш
this.Close();
}
}
}



Ушбу дастурда форма ишга тушаётганда FormLoad методида фойдаланувчига матнли майдонда қиймат ўзгартирилишига йўл қўймаймиз. Шунингдек, менюдаги чоп этиш қисмини кўринмайдиган қилиб қўямиз.



Download 0,91 Mb.

Do'stlaringiz bilan baham:
1   ...   35   36   37   38   39   40   41   42   ...   52




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