max_books - заданная константа. Пусть еще в главной форме объявлена форма - объект класса NewBook: public NewBook form2; При создании объекта form2 его конструктору передается ссылка на главную форму: form2 = new NewBook(this); Класс newBook содержит поля: private Form1 mainform; private Books books; а его конструктор следующий код: mainform = form; books = mainform.myBooks; Теперь объекту form2 доступны ранее созданные объекты, задающие книги и главную форму, так что в обработчике события Closed, возникающего при закрытии формы, можно задать код: private void NewBook_Closed(object sender, System.EventArgs e) { mainform.Show(); } открывающий главную форму. Создание элегантного, интуитивно ясного интерфейса пользователя - это своего рода искусство, требующее определенного художественного вкуса. Здесь все играет важную роль: размеры и расположение элементов управления, шрифты, важную роль играет цвет. Но тема красивого интерфейса лежит вне нашего рассмотрения. Нас сейчас волнует содержание. Полезно знать некоторые образцы организации интерфейса. Главная кнопочная форма Одним из образцов, применимых к главной форме, является главная кнопочная форма. Такая форма состоит из текстового окна, в котором описывается приложение и его возможности, и ряда командных кнопок; обработчик каждой кнопки открывает форму, позволяющую решать одну из задач, которые поддерживаются данным приложением. В качестве примера рассмотрим Windows-приложение, позволяющее работать с различными динамическими структурами данных. Главная кнопочная форма такого приложения показана на рис. 24.2.
Рис. 24.2. Главная кнопочная форма Обработчик события Click для каждой командной кнопки открывает форму для работы с соответствующей динамической структурой данных. Вот как выглядит обработчик события кнопки Список: private void button4_Click(object sender, System.EventArgs e) { //Переход к показу формы для работы со списком FormList fl= new FormList(); fl.Show(); } Как видите, открывается новая форма для работы со списком, но главная форма не закрывается и остается открытой. Шаблон формы для работы с классом Можно предложить следующий образец формы, предназначенной для поддержки работы с объектами некоторого класса. Напомню, каждый класс |