07.05.2020
«Основы программирования: ЯП С/С++/С#»
Год обучения
Групповое занятие
Тема: C#: элемент WebBrowser
Цель: познакомиться с элементом WebBrowser
Задачи обучающие:
· познакомиться с элементом в C#: WebBrowser, NotifyIcon, MessageBox
· реализация очереди средствами С#;
· систематизировать знания обучающихся по данной теме;
· закрепить знания, полученные на предыдущих уроках;
Задачи развивающие:
· развивать умения использовать знания, полученные на уроках информатики, в учебной деятельности;
· развивать логическое мышление, умение обобщать, сопоставлять и применять полученные знания на практике;
· развивать познавательную деятельность обучающихся, развивать умение анализировать происходящие изменения в решении задач;
· развивать познавательный интерес, творческую активность, интеллект;
· развивать интуицию, эрудицию, самостоятельность в суждениях, упорство в достижении цели;
· формирование информационной культуры и потребности приобретения знаний;
· стимулирование познавательного интереса обучающихся по данной теме и дисциплине Информатика и ИКТ в целом.
|
|
Задачи воспитательные:
· воспитание творческого подхода к работе, желания экспериментировать;
· профессиональная ориентация и подготовка к трудовой деятельности;
· воспитание информационной культуры, самостоятельности, ответственности;
· развивать культуру общения, воспитывать внимание, сообразительность, находчивость.
ХОД УРОКА
Теория
Элемент WebBrowser
https://metanit.com/sharp/windowsforms/4.17.php
WebBrowser предоставляет функции интернет-браузера, позволяя загружать и отображать контент из сети интернет. В то же время важно понимать, что данный элемент не является полноценным веб-браузером, и возможности по его настройки и изменению довольно ограничены.
Рассмотрим основные его свойства:
· AllowWebBrowserDrop: при установке для данного свойства значения true можно будет с помощью мыши переносить документы в веб-браузер и открывать их.
· CanGoBack: определяет, может ли веб-браузер переходить назад по истории просмотров
· CanGoForward: определяет, может ли веб-браузер переходить вперед
· Document: возвращает открытый в веб-браузере документ
· DocumentText: возвращает текстовое содержание документа
· DocumentTitle: возвращает заголовок документа
· DocumentType: возвращает тип документа
· IsOffline: возвращает true, если отсутствует подключение к интернету
· ScriptErrorsSuppressed: указывает, будут ли отображаться ошибки javascript в диалоговом окне
· ScrollBarsEnabled: определяет, будет ли использоваться прокрутка
· URL: возвращает или устанавливает URL документа в веб-браузере
Кроме того, WebBrowser содержит ряд методов, которые позволяют осуществлять навигацию между документами:
|
|
· GoBack(): осуществляет переход к предыдущей странице в истории навигации (если таковая имеется)
· GoForward(): осуществляет переход к следующей странице в истории навигации
· GoHome(): осуществляет переход к домашней странице веб-браузера
· GoSearch(): осуществляет переход к странице поиска
· Navigate: осуществляет переход к определенному адресу в сети интернет
Таким образом, чтобы перейти к определенному документу, надо исользовать метод Navigate:
1 2 3 4 | // перейти к адресу в интернете webBrowser1.Navigate("http://google.com"); // открыть документ на диске webBrowser1.Navigate("C://Images//24.png"); |
Создадим небольшй веб-браузер. Для этого поместим на форму элементы WebBrowser, TextBox (в него будем вводить адрес) и Button. И в файле формы пропишем следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | public partial class Form1: Form { public Form1() { InitializeComponent(); // установка начального адреса webBrowser1.Url=new Uri("http://google.com"); button1.Click+=button1_Click; } private void button1_Click(object sender, EventArgs e) { webBrowser1.Navigate(textBox1.Text); } } |
И по нажатию кнопки произойдет переход к адресу, введенному в текстовое поле:
Элемент NotifyIcon
Элемент NotifyIcon позволяет задать значок, который будет отображаться при запуске приложения в панели задач.
Рассмотрим основные его свойства:
- BallonTipIcon: иконка, которая будет использоваться на всплывающей подсказке. Это свойство может иметь следующие значения: None, Info, Warning, Error.
- BalloonTipText: текст, отображаемый во всплывающей подсказке
- BalloonTipTitle: загаловок всплывающей подсказки
- ContextMenuStrip: устанавливает контекстное меню для объекта NotifyIcon
- Icon: задает значок, который будет отображаться в системном трее
- Text: устанавливает текст всплывающей подсказки, которая появляется при нахождении указателя мыши над значком
- Visible: устанавливает видимость значка в системном трее
Чтобы добавить на форму NotifyIcon, перенесем данный элемент на форму с панели инструментов. После этого добавленный компонент NotifyIcon отобразится внизу дизайнера формы.
Затем зададим у NotifyIcon для свойства Icon какую-нибудь иконку в формате .ico. И также установим для свойства Visible значение true.
Далее также зададим у NotifyIcon для свойства Text какой-нибудь текст, например, "Показать форму". Этот текст отобразится при прохождении указателя мыши над значком NotifyIcon в системном трее.
Чтобы можно было открыть форму по клику на значок в трее, надо обработать событие Click у NotifyIcon. Поэтому в коде формы определим обработчик для этого события:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | public partial class Form1: Form { public Form1() { InitializeComponent(); this.ShowInTaskbar = false; notifyIcon1.Click += notifyIcon1_Click; } void notifyIcon1_Click(object sender, EventArgs e) { this.WindowState = FormWindowState.Normal; } } |
В обработчике просто переводим форму из минимизированного состояния в обычное.
И кроме того, чтобы форма не отображалась на панели задач, у нее задаем свойство ShowInTaskbar = false.
В итоге после запуска приложения в трее будет отображаться значок NotifyIcon, нажав на который при свернутой форме, мы ее можем заново открыть.
Теперь используем всплывающую подсказку. Для этого изменим конструктор формы:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | public partial class Form1: Form { public Form1() { InitializeComponent(); this.ShowInTaskbar = false; notifyIcon1.Click += notifyIcon1_Click; // задаем иконку всплывающей подсказки notifyIcon1.BalloonTipIcon = ToolTipIcon.Info; // задаем текст подсказки notifyIcon1.BalloonTipText = "Нажмите, чтобы отобразить окно"; // устанавливаем зголовк notifyIcon1.BalloonTipTitle = "Подсказка"; // отображаем подсказку 12 секунд notifyIcon1.ShowBalloonTip(12); } void notifyIcon1_Click(object sender, EventArgs e) { this.WindowState = FormWindowState.Normal; } } |
И при запуске отобразится всплывающая подсказка: