![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Элемент управления StatusBar применяется в программах для вывода информации в строку состояния — небольшую полоску, расположенную внизу приложения. В Microsoft Word, например, на ней отображается количество страниц, язык ввода, состояние проверки правописания и другие параметры. Добавим к приложению Notepad C# строку состояния, на которой осуществляется подсчет вводимых символов и выводится системное время.
Добавляем на форму blank элемент управления StatusBar. Удаляем содержимое поля свойства Text. В поле свойства Panels щелкаем на кнопку (…). Открывается StatusBarCollectionEditor, в котором мы создаем панели для отображения. Создайте две панели, дважды щелкая на кнопке Add, и установите им следующие свойства (измененные значения выделяются жирным шрифтом) (рис. 2.20 и рис. 2.21):
Рис. 2.20. Свойства панели sbAmount
Рис. 2.21. Свойства панели sbTime
Значения некоторых свойств панели приводятся в таблице 2.2.
Таблица 2.2. | |
Свойство | Значение |
Alignment | Выравнивание содержимого свойства Text на панели |
AutoSize | Изменение размеров панели по содержимому |
BorderStyle | Внешний вид панели – утопленная, приподнятая или без выделения |
Icon | Добавление иконки |
Style | Стиль панели |
Text | Текст, располагаемый на панели |
ToolTipText | Всплывающая подсказка — появляется при наведении курсора на панель |
Width | Ширина панели в пикселях |
Name | Название панели для обращения к ней в коде |
Свойства панели, назначаемые в окне редактора StatusBarCollectionEditor, можно изменять в коде —именно так мы сейчас и поступим.
После завершения работы над панелями закрываем редактор. Свойству ShowPanels элемента управления StatusBarустанавливаем значение True. На форме немедленно отображаются две панели.
Выделяем элемент управления RichTextBox, в окне его свойств переключаемся на события и создаем обработчик для события TextChanged:
private void richTextBox1_TextChanged(object sender, System.EventArgs e)
{
//Свойству Text панели sbAmount устанавливаем надпись "Аmount of symbols"
//и длину текста в RichTextBox.
sbAmount.Text = "Аmount of symbols" + richTextBox1.Text.Length.ToString();
}
Свойство Text панели sbAmount мы изменяем программно: даже если бы мы ничего не написали в окне редактораStatusBarCollectionEditor, при возникновении события TextChanged на панели появится надпись.
Займемся теперь второй панелью — той, на которую будем выводить системное время. В конструкторе формы blank добавляем код:
public blank()
{
InitializeComponent();
//Свойству Text панели sbTime устанавливаем системное время,
// конвертировав его в тип String
sbTime.Text = Convert.ToString(System.DateTime.Now.ToLongTimeString());
//В тексте всплывающей подсказки выводим текущую дату
sbTime.ToolTipText = Convert.ToString(System.DateTime.Today.ToLongDateString());
}
Запускаем приложение. Панель с выводимым временем располагается достаточно необычно (рис. 2.22), при необходимости для вывода времени в привычном правом нижнем углу можно добавить третью пустую панель.
Рис. 2.22. Строка состояния с двумя панелями
Дата публикования: 2014-12-11; Прочитано: 269 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!