Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 168

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 162 163 164 165 166 167 < 168 > 169 170 171 172 173 174 .. 404 >> Следующая


public Forml ()

II

11 Необходимо для поддержки Windows Form Designer 11

InitializeComponent();

this.raenultemfilee.Popup +* new EventHandler{this.ineniiXtemFiles_Popup) j

)
Дополнитпелъные возможности Windows Form

355

Теперь мы создаем собственно обработчик события: private void menuItemFiles_Popup(object sender, System.EventArga e)

П Позволяет определять j существует ли данный файл, присваивая соответствующее П значение свойству Enabled, которое возвращается катодом File.Bid.ats. tbis.menultemOpen.&oabled * S] сел.10.File.Exist*(*../../test.rtf')j

Статический метод Exists класса File возвращает значение логического типа, которое равно true, еслн такой файл существует, н false — в противном случае; это именно то. что требуется отобразить в пункте меню Open, поэтому мы просто присваиваем свойству Enabled значение, возвращаемое этой функцией.

На этом работа с основным меню завершена, и теперь можно перейти к контекстному меню. Мы добавляем обработчик событий click точно так же, как делали это для основного меню — посредством двойного щелчка мышью на пунктах и внесения следующего кода:

private void menuItemBoldLClick(object sender, System.BventAroe e)

{

Font newFont = new Font(rtfText.SelectionFont,

(rtfText.SelectionFont.Bold 7 rtfText.SelectionFont.Style & -FontStyle.Bold : rtfText.SelectionFont.Style I FontStyle.Bold))I rtfText.SelectionFont * newFont;

) .

private void menultemltalic_Click(object sender, $ye ten .EventArgs e)

<

Font newFont “ new Font(rtfText.SelectionFont,

(rtfText.SelectionFont.Italic 7 rtfText.S LectionFont.Style 6 -FontStyle.Italic s rtfText.SelectionFont.Style I FontStyle.Italic))j rtfText.SelectionFont = newFont;

)

private void menuItemUnderline_Click(object sender. System.BventArse e)

(

Font newFont = пей Font (rtfText.SelectionFont,

(rtfText.SelectionFont.Underline 7

rtfText.S LectionFont.Style & -FontStyle.Underlir : rtfText.SelectionFont.Style I FontStyle.Underline))j rtfText.SelectionFont = newFont;

} ..... Я

В каждой из этих трех функций мы создаем новый шрифт на основе шрифта, который используется в текущий момент в окне RichTextbox. Еслн стиль шрифта уже задан, то удаляем его из нового шрифта, в противном случае добавляем требуемый стиль в шрифт. После этого присваиваем новый шрифт выбранному тексту.

Единственная строка, предназначенная для создания объеетов, выглядит несколько устрашающе, поэтому дадим здесь некоторые пояснения. Если вы чувствуете, что недостаточно знакомы с тринарнымн операторами, то вам следует обратиться к главе 4. Для пояснений мы возьмем строку нз метода menuitemBoid_ciick;

Font newFont = new Font(rtfText.SelectionFont,

( rtfText.SelectionFont.Bold 7 rtfText.SelectionFont.Style & -FontStyle.Bold ; rtfText.SelectionFont.Style I FontStyle.Bold)); rtfText.SelectionFont = newFont;

1

2

3

4

5
356 Глава 14

На строке 2 мы осуществляем проверку, равно ли, значение свойства Bold выбранного шрифта true. Если да, то необходимо сформировать новый стиль для создаваемого шрифта, в котором будут сохранены все имеющиеся у него стили за исключением выделения жирным шрифтом, чем и занимается код, расположенный между символами ? и : иа строке 3. Код, расположенный на строке 4 — сразу после точки с запятой — будет выполняться в том случае, если текущее значение свойства Bold равно false, причем на этот раз вместо того, чтобы удалять выделение жирным шрифтом, мы добавляем его. Наконец, вся эта последовательность событий заключается в круглые скобки — этот прием весьма часто используется для отделения логики трииарного оператора от остального кода, хотя в данном случае польза от такого выделения не представляется очевидной.

На этом первый пример, посвященный использованию меню, завершен. Пели запустить код, то должно получиться нечто вроде представленного на рисунке слева.

Панели инструментов

Хотя меню прекрасно справляются с задачей предоставления доступа ко всему многообразию функциональных возможностей приложения, размещение некоторых пунктов не только в меню, но и на паиели инструментов, может дать некоторые выгоды. Это оказывается справедливым для пунктов меню, используемых пользователем наиболее часто, например, Open н Save. Панель ведет к отдельным функциональным возможностям приложения посредством одного щелчка мышью, что, вне всякого сомнения, требует меньшнх усилий, чем прн работе с меню — пользователю намного легче щелкать мышью на постоянно видимой кнопке, чем осуществлять поиск по иерархии различных меню.

Изображение экрана, приведенное ниже, демонстрирует набор линеек инструментов, которые видны автору в процессе написания этой главы в MS Word:

•о » o' - & П 5*Г '' p ffi Я юо% { 6) 'r
: Соленым Text ieasktfvils BE Rtgu .« , 10 -- 1 в- / .д. ! S ШМ Щ !='.:= *" ifZ\ B* *
J'ia ей 5a & b * ' 0 » & •

Кнопки, расположенные на панели инструментов, обычно содержат рисунок без текста, хотя и существует возможность использовать кнопки, на которых будет изображено и то, и другое. В качестве панелн с кнопками без текста можно привести панели в MS Word (как на рисунке), а в качестве примера панелей с текстом — используемые в MS Internet Explorer. Еслн вы наведете курсор мыши на какую-либо кнопку и остановите его, то будет выведено некоторое пояснение относительно предназначения данной кнопки, особенно в тех случаях, когда на ней имеется только изображение и отсутствует какой-либо текст.
Предыдущая << 1 .. 162 163 164 165 166 167 < 168 > 169 170 171 172 173 174 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.