Побудова інтерфейсу з невидимими елементами

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра інформаційних систем та мереж

Інформація про роботу

Рік:
2010
Тип роботи:
Лабораторна робота
Предмет:
Інші
Група:
КН

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти та науки України Національний університет «Львівська політехніка» Кафедра інформаційних систем та мереж Лабораторна робота №2 на тему: «Побудова інтерфейсу з невидимими елементами» Львів-2010 Мета: Набуття навичок із використання в програмах елементів керування Label і TextBox для відображення та редагування багаторядкового тексту. Хід виконання роботи: Запускаю середовище програмування Visual Studio 2010. Відкриваю програму до попередньої лабораторної роботи. Створюю нові форми, налаштовую зв'язки між ними. Організовую захист редагування довідки паролем. Додаю до програми головне випадаюче меню. Організовую реагування програми на «гарячі клавіші». Тестую програму. Оформляю звіт до лабораторної роботи. Завдання: Програму, розроблену під час виконання лабораторної роботи № 1, доповнити довідкою про розробника, яка повинна включати не менше тридцяти слів. Ця програма повинна забезпечувати: відображення довідки лише за побажанням користувача; приховання довідки після її перегляду; можливість корекції довідки під час виконання програми; засоби, які використовуються при корекції довідки та її приховання повинні бути доступними лише під час перегляду довідки. Код програми: Form1.cs: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace Lab1_MZKIT { public partial class Form1 : Form { public Form1() { InitializeComponent(); } public static string helpText = "Лабораторна робота виконана в середовищі програмування Visual Studio .Net 2010 на мові програмування C#. \r\nЦе дає змогу використовувати всі можливості платформи .Net. \r\nВ даній роботі використовувалися елементи платформи, версії 2.0\r\nДля редагування цього поля натисніть клавішу \"Редагувати\" та введіть пароль."; protected override void OnKeyDown(KeyEventArgs e) { switch (e.KeyCode) { case Keys.F1: help(); e.Handled = true; break; case Keys.Escape: exit(); e.Handled = true; break; case Keys.Enter: calculate(); e.Handled = true; break; } } private void txtbKeyDown(object sender, KeyEventArgs e) { char c = (char)e.KeyCode; if (!char.IsDigit(c) && !char.IsSeparator(c) && !char.IsControl(c)) { e.Handled = true; } } private void txtbKeyPressDoubleFilter(object sender, KeyPressEventArgs e) { char c = (char)e.KeyChar; if (!char.IsDigit(c) && !char.IsControl(c)) { if ((c!='.') || (c=='.' && (((TextBox)sender).Text.IndexOf('.')!=-1 || ((TextBox)sender).Text.Length==0))) e.Handled = true; } } private void btnExit_Click(object sender, EventArgs e) { exit(); } private void exit() { Application.Exit(); } private void txtbKeyPressIntFilter(object sender, KeyPressEventArgs e) { char c = e.KeyChar; if (!char.IsDigit(c) && !char.IsControl(c)) e.Handled = true; } private double binom(double a, double b, int n) { double s=0; for (int i = 0; i <= n; i++) s += combination(i, n) * Math.Pow(a, n - i) * Math.Pow(-b, i); return s; } private int fact(int n) { int f = 1; for (int i = 2; i <= n; i++) f *= i; return f; } private int combination(int i, int k) { return fact(k) / (fact(i) * fact(k - i)); } private void btnCalculate_Click(object sender, EventArgs e) { calculate(); } private void calculate() { double a = 0, b = 0; int n = 0; try { a = double.Parse(txtbA.Text); } catch { MessageBox.Show("Невірно введено дійсне А... Повторіть введення...", "Помилка", MessageBoxButtons.OK, MessageBoxIcon.Error); txtbA.Focus(); return; } try { b = double.Parse(txtbB.Text); } catch { MessageBox.Show("Невірно введено дійсне B... Повторіть введення...", "Помилка", MessageBoxButtons.OK, MessageBoxIcon.Error); txtbB.Focus(); return; } try { n = int.Parse(txtbN.Text); } catch { MessageBox.Show("Невірно введено ціле N... Повторіть введення...", "Помилка", MessageBoxButtons.OK, MessageBoxIcon.Error); txtbN.Focus(); return; } txtbResult.Text = binom(a, b, n).ToString(); } private void вихідToolStripMenuItem_Click(object sender, EventArgs e) { exit(); } private void обчислитиToolStripMenuItem_Click(object sender, EventArgs e) { calculate(); } private void показатиДовідкуToolStripMenuItem_Click(object sender, EventArgs e) { help(); } private void help() { frmHelp f = new frmHelp(); f.Show(); } } } frmHelp.cs: using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Reflection; using System.Windows.Forms; namespace Lab1_MZKIT { partial class frmHelp : Form { public frmHelp() { InitializeComponent(); textBoxDescription.Text = Form1.helpText; } private void button1_Click(object sender, EventArgs e) { frmPasswordDialog f = new frmPasswordDialog(); if (f.CheckPassword()) { textBoxDescription.ReadOnly = false; button2.Visible = true; button1.Visible = false; okButton.Visible = false; textBoxDescription.Focus(); } } private void okButton_Click(object sender, EventArgs e) { this.Close(); } private void button2_Click(object sender, EventArgs e) { textBoxDescription.ReadOnly = true; button2.Visible = false; button1.Visible = true; okButton.Visible = true; Form1.helpText = textBoxDescription.Text; } } } frmPasswordDialog.cs: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace Lab1_MZKIT { public partial class frmPasswordDialog : Form { private string password = "1111"; private bool isPasswordCorrect = false; public frmPasswordDialog() { InitializeComponent(); } public bool CheckPassword() { this.ShowDialog(); return isPasswordCorrect; } private void button1_Click(object sender, EventArgs e) { if (textBox1.Text == password) { isPasswordCorrect = true; this.Close(); } else { DialogResult dr = MessageBox.Show("Невірний пароль", "Помилка", MessageBoxButtons.RetryCancel, MessageBoxIcon.Stop); if (dr == System.Windows.Forms.DialogResult.Cancel) this.Close(); } } private void frmPasswordDialog_Load(object sender, EventArgs e) { textBox1.Focus(); } private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { if ((char)e.KeyChar == (char)Keys.Enter) button1_Click(this, EventArgs.Empty); } } } Результати роботи програми:     Висновки: Я набув навичок із використання в програмах елементів керування Label і TextBox для відображення та редагування багаторядкового тексту, створення довідки та захищення редагування даних паролем.
Антиботан аватар за замовчуванням

25.11.2012 22:11-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!