Главная страница
Навигация по странице:

  • Set Image

  • SelectedIndexChanged

  • ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ

  • КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ

  • Разработка gui. Создание sdiприложений обработка событий


    Скачать 361.78 Kb.
    НазваниеРазработка gui. Создание sdiприложений обработка событий
    Дата14.10.2022
    Размер361.78 Kb.
    Формат файлаdocx
    Имя файла14.10.docx
    ТипЛабораторная работа
    #733575
    страница5 из 7
    1   2   3   4   5   6   7

    Создание панели инструментов


    Кнопки панели инструментов обеспечивают пользователям более легкий доступ к возможностям, которые определены в меню. Для этого используется класс ToolStrip.

    Для добавления объекта панель инструментов: перетащить объект ToolStrip с панели Toolbox; растянуть на форме, расположив в нужной части окна;

    по умолчанию будет сформирована метка на панели для выбора типа объектов панели инструментов;

    выбрать объект Button. Появится заготовка для кнопки с изобра- жением. Для добавления изображения на кнопку нужно щелкнуть по

    кнопке правой клавишей мыши и выбрать пункт Set Image. В появив- шемся окне нажать кнопку Import и выбрать путь к рисунку.

    Список элементов ListBox


    Добавьте в проект класс, описывающий объект гостиница. class Hotel {

    public Hotel(String city, String name, int r, double m) { City = city; HotelName = name;

    Rooms = r; Rate = m;

    }

    public String City, HotelName; public int Rooms;

    public double Rate;

    }

    При запуске программы AdminForm в процессе инициализации ме- тод Form1_Load осуществляет начальную загрузку списка элементов hotellist, в него загружается список гостиниц.

    public partial class Form1 : Form {

    ArrayList list = new ArrayList(); // список гостиниц public Form1() { InitializeComponent(); }



    private void Form1_Load(object sender, EventArgs e) { Hotel ob1=new Hotel("Москва","Россия",200,1500); list.Add(ob1);

    Hotel ob2=new Hotel("Москва","Прага",200,3000); list.Add(ob2);

    Hotel ob3=new Hotel("Новосибирск","Объ",150,1500); list.Add(ob3);

    Hotel ob4=new Hotel("Новосибирск","Тратата",300,1200); list.Add(ob4);

    hotellist.Items.Clear();

    if (list == null) { return; } foreach(Hotel hotel in list) {

    // строка для записи в элемент ListBox hotellist String city = hotel.City.Trim();

    String name = hotel.HotelName.Trim(); String rooms = hotel.Rooms.ToString(); String rate = hotel.Rate.ToString();

    String str = city + "," + name + "," + rooms + "," + rate;

    hotellist.Items.Add(str);

    }

    }

    }

    ListBox содержит свойство Items, которое поддерживает коллек- цию объектных ссылок. Сначала вызываем метод Items.Clear() для очистки списка. Потом с помощью цикла перебираем гостиницы в списке и создаем строку из полей структуры гостиницы, разделенных запятыми. Добавляем эту строку в список элементов методом Items

    .Add().

    Для выбора элемента из списка нужно щелкнуть на нем. Выбор вы- зовет событие SelectedIndexChanged. Доступ к выбранному элементу можно получить с помощью свойств SelectedIndex и SelectedItem. Ес- ли никакой элемент не выбран, значение SelectedItem будет равно –1. Ниже приведен код обработчика события SelectedIndexChanged.

    private void hotellist_SelectedIndexChanged(object sender, EventArgs e) {

    if (hotellist.SelectedIndex != -1) {

    String selected = hotellist.SelectedItem.ToString(); String[] fields;

    fields = selected.Split(','); // поля разбить; label1.Text = fields[0];

    label2.Text = fields[1]; label3.Text = fields[2]; label4.Text = fields[3];

    } else { label1.Text = ""; }

    }
    Добавление объектов, вводимых на дополнительной форме AddHotelDialog в коллекцию и элемент hotellist, осуществляется в обработчике события при нажатии на кнопку Add:

    private void cmdAdd_Click(object sender, EventArgs e) {

    . . .

    String s=dlg.City+"," +dlg.HotelName+","

    +dlg.Rooms.ToString()+"," +dlg.Rate.ToString(); hotellist.Items.Add(s);

    Hotel ob=new

    Hotel(dlg.City,dlg.HotelName,dlg.Rooms,dlg.Rate);

    list.Add(ob);

    . . .

    }
    ЛАБОРАТОРНАЯ РАБОТА

    СОЗДАНИЕ MDI-ПРИЛОЖЕНИЙ. СЕРИАЛИЗАЦИЯ ОБЪЕКТОВ. CТАНДАРТНЫЕ ДИАЛОГИ


    Цель работы:

    • изучить особенности разработки MDI-приложений в Visual Studio

    .Net;

    • изучить способы сохранения данных в файл и загрузки из файла;

    • освоить механизм сериализации и десериализации объектов.


    ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ

      1. Создать учебные примеры и разобрать принцип их работы. Поместить примеры работы программ и их коды с коммен- тариями в отчет.

      2. Создать текстовый редактор NotepadC#, добавив недостающие пункты меню и функции.

      3. На основании лабораторной работы 3 создать MDI-приложение. Информация в окне должна отображаться в виде таблицы. Иметь воз- можность делать выборку данных по различным критериям. Перено- сить данные из одной формы в другую.

      4. Добавить формы для ввода дополнительной информации об объ- екте и фото объекта.

      5. Добавить пункты меню для сохранения объектов в файл и за- грузки. При сохранении использовать стандартные диалоговые окна и механизм сериализации. В класс добавить поле «Дата создания объек- та». Поле не сериализовать, а при десериализации заново устанавли- вать по системной дате.


    КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
    1   2   3   4   5   6   7


    написать администратору сайта