Главная » Просмотр файлов » Г. Шилдт - С# 3.0 Полное руководство. 2010

Г. Шилдт - С# 3.0 Полное руководство. 2010 (1160798), страница 191

Файл №1160798 Г. Шилдт - С# 3.0 Полное руководство. 2010 (Г. Шилдт - С# 3.0 Полное руководство. 2010) 191 страницаГ. Шилдт - С# 3.0 Полное руководство. 2010 (1160798) страница 1912019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 191)

Два способа создания приложений на основе форм для Фабоиз Прежде всего следует отметить, что в пакет Ъ'!зца! Бент)!о входит целый набор развитых инструментальных средств, автоматизирующих большую часть процесса разработки приложения для %!пк!отчз. С помощью этих средств можно визуально конструировать и размещать различные элементы управления н меню в окне разрабатываемого приложе- Глава 26. Создание приложений нв основе форм длн рйпеоиз 945 ния. В Ч1зпа! Бгпг!!о можно даже "набросать" вчерне классы и методы, необходимые для каждой функции приложения. Откровенно говоря, при создании большинства реальных приложений для %!пбоигз лучше всего пользоваться инструментальными средствами разработки из пакета ЧЬпа) Бтнг!!о, хотя это и не обязательное правило.

Ведь исходный текст программы для %)пг)ем з можно написать и в обычном текстовом редакторе, а затем скомпилировать ее подобно консольному приложению. Эта книга посвящена языку программирования С(), а не пакету разработки Чнша1 ззпйо, и поэтому примеры программ для ЪЧ!пг!оигз из этой главы довольно кратки и представлены в том виде, в каком они написаны в текстовом редакторе. Тем не менее общая структура, конструкция и организация этих программ остаются такими же, как и у тех программ, которые создаются инструментальными средствами разработки в Чиша! Б(нг!!о, Таким образом, материал этой главы ориентирован на оба подхода к разработке приложений для ЪЧ)проке. Взаимодействие Надоив с пользователем Прежде чем программировать для ЪЪ))пбозгз, следует знать, каким образом пользователь взаимодействует с ЪЧ!пдокз, поскольку именно от этого зависит общая архитектура всех приложений для %)пг!емз.

Это взаимодействие коренным образом отличается от представленных ранее примеров консольных программ. Так, при написании консольной программы следует иметь в виду, что инициатором взаимодействия с операционной системой является сама консольная программа. Например, консольная программа сама запрашивает ввод или вывод, вызывая метод неаг(() или нгзкеьйпе(). Следовательно, консольные программы обращаются к операционной системе, а не наоборот. В то же время приложения для %задок з работают совсем иначе, поскольку в данном случае ЪЪ)(вбок з обращается к программе.

Это происходит следующим образом. Программа ожидает до тех пор, пока не получит от ЪЪ)(пг!овгз сообщение. Получив его, программа должна выполнить соответствующее действие. В частности, она может вызвать метод, определяемый в ЪЪ))пг)озгз, чтобы отреагировать на полученное сообщение, но инициатором всякого действия по-прежнему остаегся ЪЪ)(пдокз. Именно это взаимодействие с ЪЧ)пс(окз на основе сообщений, а не чтолибо другое определяет общую форму всех приложений для Мпг!ок з. Программа может получать от ЪЪ)(пг(омз самые разные виды сообщений. Например, при каждом щелчке кнопкой мыши в окне программы ей посылается сообщение об этом событии. Другой вид сообщения посылается при нажатии кнопки или выборе пункта меню. В связи с этим необходимо твердо усвоить следующее: сообщения, посылаемые программе, поступают в произвольном порядке.

Именно поэтому приложения для ЪЧ)пг!ока похожи на программы, управляемые по прерываниям. Программе заранее неизвестно, какое именно сообщение будет следующим. Формы для МЛпбоиз В основу приложений для ЪЧ)пг!очгз, создаваемых на С(), положена форма, в которой инкапсулированы базовые функции, необходимые для создания окна, его отображения на экране и получения сообщений. Форма может представлять любой вид окна, включая главное окно приложения, порожденное окно и даже диалоговое.

Вновь созданная форма оказывается пустой. Для того чтобы снабдить форму определенными функциями, в нее добавляются меню и такие элементы управления, как экранные кнопки, списки и флажки. Таким образом, форму можно рассматривать в качестве контейнера для других объектов ЪЧ)пг(окз. 946 Часть (!. Бнбяиогега Сз Когда окну посылается сообщение, оно преобразуется в событие. Поэтому для обработки сообщения, поступающего от %(пс(ошз, достаточно зарегистрировать для него соответствующий обработчик событий в форме. После этого обработчик событий будет вызываться автоматически при каждом получении этого сообщения. КлаСС Голыш Для создания формы следует получить экземпляр объекта класса Гоги или любого другого производного от него класса.

У самого класса Гоги имеется достаточно функциональных возможностей, но помимо них он наследует дополнительные функции от двух наиболее важных базовых классов: Яузсеш. Сошропепсмоое1. Сошропепт (поддерживает компонентную модель .НЕТ); а также Яуз тем. И1пс(онз . Гогшз "опгго1. В классе Сопаго1 определяются общие функции для всех элементов управления в %(п()овэ. Эти же функции доступны и в классе Гоги, поскольку он наследует от класса Сопт го1. В приведенных ниже примерах используется несколько членов классов ропп и сопсго1.

Скелетный вариант приложения на основе форм для Мпбоив Рассмотрим сначала пример создания простейшего приложения на основе форм для %(пдо(уз. В этом приложении только создается и отображается окно. В нем отсутствуют какие-либо другие функции. Тем не менее этот скелетный вариант приложения наглядно демонстрирует порядок построения полноценно функционирующего окна.

Это именно тот каркас, на котором можно создавать большинство приложений для %(пдовэ, ниже приведен исходный код скелетного варианта приложения на основе форм для %(ппотуз. // Скелетный вариант приложения на основе форм // для Игпсонв. пв1пЧ Яуввеьм овалу Яувоеш.ИТппонв.Гогшв) // Класс ИапБХе1 является производным от класса Гопп.

с1авв И1пзхе1: Гоги ( роо11с И1пзке1() ( // присвоить окну наименование. ТехТ = "Скелет приложения для Итпоонв"; ) // Метод Маап() служит лишь для запуска приложения. (ЯТАТЬгеао] впаптс тото Маап() ( Иапзке1 вхе1 = пен И1пзке1(); // создать форму // Активизировать стили оформления. Арр11сапаоп . БпаЬ1еуавоа15ву1ев () ) // Запустить механизм функционирования окна.

Арр11саогоп.кап(вке1)) ) Ггааа 26. Создание приложений на огноае ферм длл ггдпиоез 947 ОКно ггггзггннме и зтмд ггггю егммг* Нммии|г~ггг нг емг Об! Иггггнг1ини гивеем агж нзип-- 948 Часть )!. Библиотека С» методу Маап () в программе для Ж(пооткэ. Он задает модель однопоточного подразделения (ЯТА) для программы. (Обсуждение поточных моделей выходит за рамки этой главы, но вкратце следует пояснить, что в приложении для ЪЧпг(ов з может использоваться одна из двух разных поточных моделей: одно- или многопоточного подразделения.) В методе Маап () создается объект зке1 класса И(пзхе1.

Затем вызывается метод Лрр11сакаоп. Епа)э1е)таэиа15ту1ез (), который актизизирует стили оформления (темы), если они поддерживаются операционной системой. Формально этого в приложении на основе форм Н(т(пс(ов'з Гогшз не требуется, но стили оформления улучшают внешний вид элементов управления в окне приложения и поэтому рекомендуются для обязательного применения. Данный метод должен вызываться первым в методе Маап () . Класс Арр11сат1оп определен в пространстве имен зузтет. Иъпйоиз. рогпэ и инкапсулирует общие аспекты всех приложений для Ъ(т(пт)отче. Далее объект зке1 передается методу Ноп (), который также определен в классе Арр11сатаоп, как показано ниже.

Лрр11сак1оп.асп(аие1)т При этом запускается механизм функционирования окна. Ниже приведена общая форма метода нип (), применяемая в рассматриваемом здесь скелетном варианте приложения для %)пк(онз. ро)т11с экакас чоат) Нип(гоги форма) Этот метод принимает ссылку на объект формы в качестве своего параметра.

А поскольку класс иапзхе1 наследует от класса рогат, то объект типа иапвхе1 может быть передан методу ноп ( ) . В результате выполнения рассматриваемой здесь программы создается и отображается окно, приведенное на рис. 26.1. Это окно имеет устанавливаемые по умолчанию размеры и является полноценно функционирующим. В частности, его можно изменить по размеру, переместить, свернуть, развернуть и закрыть. Следовательно, для того чтобы создать окно с базовыми функциями, присущими практически всем окнам в тлбпт!очка, достаточно написать всего лишь несколько строк кода приложения на основе форм. С другой стороны, для написания аналогичной программы на С с непосредственным обращением к прикладному интерфейсу АР! потребовалось бы приблизительно в пять раз больше строк кода! Из анализа приведенного выше скелетного варианта можно сделать общий вывод для всех приложений, разрабатываемых на основе форм для ЪЧпс(ов з.

Характеристики

Тип файла
DJVU-файл
Размер
6,78 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Г. Шилдт - С# 3.0 Полное руководство
C_sharp_3TCR_code
Apndx.lst
Chap2.lst
Chap3.lst
Chap4.lst
Chap5.lst
Chap6.lst
Chap7.lst
Chap8.lst
Chap9.lst
Chap10.lst
Chap11.lst
Chap12.lst
Chap13.lst
Chap14.lst
Chap15.lst
Chap16.lst
Chap17.lst
Chap18.lst
Chap19.lst
Chap20.lst
Chap21.lst
Chap22.lst
Chap23.lst
Chap24.lst
Chap25.lst
Chap26.lst
Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6455
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее