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

С# - Ватсон К.

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


Добавление обработчиков событий

Теперь можно добавить обработчик события ButtonCiick элемента Toolbar, для чего достаточно дважды щелкнуть мышью иа управляющем элементе:

private void toolBarPonta_ButtonCliclt(object sender.

System.Windows, Forms .ToolBarButtonClickEventArgs e)

<

Font newFont;

// Переключение на индекс соответствующей кнопки в семействе Buttons

Н управляющего элемента Toolbar

switch (toolBarFonts.Buttons.IndexOf(r.Button))

(

case 0: If Хирный ирифт

if (e.Button.Pushed)

П Создание нового ирифта с ^делением хирным шрифтом newFont “ new Font(rtfText.SelectionFont,

rt?Text. SelectionFont. Style I FontStyle .Bold) ;

else

// Создание нового шрифта без выделения хирным шрифтом newFont » new Font(rtfText.SelectionFont,

rtfText.SelectionFont.Style & -FontStyle.Bold) j rtfText.SelectionFont = newFont; break;

case 1: // Курсив

if (e.Button.Pushed)

П Создание нового шрифта с выделением курсивом newFont = new Font(rtfText.SelectionFont,

rtfText.SelectionFont.Style I FontStyle.Italic)г

else

11 Создание нового ирифта без выделения курсивом

newFont = new Font(rtfText.SelectionFont, '

rtf1:xt.SelectionFont.Style ? -FontStyle.Italic); rtfText.SelectionFont = newFontj break)

case 2; II Подчеркивание

if (e.Button.Pushed)

// Создание нового гриф та с подчеркиванием newFont * new Font(rtfText.SelectionFont,

rtfText.SelectionFont.Style I FontStyle.Underline)j

else

II Создание нового ирифта без подчеркивания newFont “ new Font(rtfText.SelectionFont,

rtfText.SelectionFont.Style ? -FontStyle.Underline)i rtfText.SelectionFont = newFont; break;
362 Глава 14

В этой функцнн мы сначала определяем индекс той кнопки, которая была нажата. Это необходимо, поскольку все кнопки семейства Buttons элемента Toolbar используют данное событие для оповещения о нажатии. После того, как та кнопка, которая была нажата, определена, проверяем ее свойство Pushed, для того чтобы понять, следует ли установить илп удалить выбранный стиль шрифта, и я соответствии с этой информацией создаем новый стнль. В завершение присваиваем новый шрифт свойству SelectionFont управляющего элемента rtfText.

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

public Forml()

(

InitializeComponent<) ;

this .menuItemFiles, Popup += new EventHandler (this .*ienuIt*mFiles_Popup); this.rtfText.SelectionChansed ¦ ¦

new EventHandler(thia.rtfTextjSelectionChanged)i

>

Затем мы добавляем собственно обработчик событий;

private void rtfText_SelectionChanaed(object sender. System,EventArgs e}

(

t i Корректная установка кнопок на панели инструменте в нажатом / / или ненажаток состояние

this.toolBarButtgnBold.Pushed ¦ rtfText.SelectionFont.Bold;

this.toolBarButtonltalic.Pushed * rt?Text.SelectionFont.Italic;

this,toolBarButtonUnderline.Pushed ¦ rtfText.SelectionFont.Underline;

)

Элемент RichTextbox позволяет получать информацию о стиле текущего шрифта, поэтому мы просто присвоим соответствующие значения свойству Enabled для кнопок на панели инструментов.

Все, что теперь осталось сделать,— это обработать событие “щелчок мышью" ДЛЯ двух пунктов меню В кнопке типа DropDownButton, Для ЭТОГО Добавим события click в пункты меню — точно так же, как делали в примере использования меню, приведенном выше в этой главе (двойным щелчком мыши на соответствующем пункте):

private void menuItemMS_Clic!c( object sender, System.EventArgs e)

<

// Создание нового шрифта на основе требуемого семейства шрифтов.

Font newFont ¦ new Font(*HS San* Serif*, rtfText.SelectionFont.Size,

rtfText.SelectionFont.Style); rtfText.SelectionFont = newFont; _

J ¦ ''

private void utenultejnTimea_Clicls(object sender, System.EventArgs e)

(

// Создание нового шрифта на основе требуемого семейства шрифтов.

Font newFont ¦ new Font('Times New Roman*, rtfText.SelectionFont,Size,

rtfText.SelectionFont.Style); rtfText.SelectionFont = newFont;

\

Мы создаем новый шрифт из того семейства шрифтов, который мы хотим использовать, а затем присваиваем СВОЙСТВО SelectionFont вновь созданному шрифту.
Дополнительные возможности Windows Form

Если вы используете версию Visual Studio.NET Bela 2, то при попытке откомпилировать данный пример, вы увидите несколько предупреждений.

Это не является следствием каких-либо действий с вашей стороны, скорее, это следствие действий со стороны компании Microsoft.

Дело в том, что код, генерируемый для экземпляров Toolbar But ton, включает в себя строку, в которой происходит присваивание свойства гселпаса.

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

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

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

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

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