
- •Урок 7. Работаем с xml-файлом
- •Урок 10. Класс SystemInformation
- •Урок 13. Получаем список всех установленных шрифтов
- •Урок 15. Продолжаем работать с TreeView
- •Урок 17. Применяем стили xp
- •Урок 18. TreeView - показываем каталоги
- •Урок 19. TreeView для каталогов - продолжение
- •Урок 26.Передаем данные из диалога
Урок 13. Получаем список всех установленных шрифтов
Для получения списка всех установленных в системе шрифтов служит класс InstalledFontCollection из пространства имен System.Drawing.Text.
Создайте Windows приложение, разместите на форме список (ListBox) и метку (Label). В списке мы и покажем список всех установленных на данном компьютере шрифтов. Метка будет работать как образец выбранного шрифта - при выборе имени шрифта в списке изменится шрифт у метки, так что все будет достаточно наглядно.
Измените для label1 свойства AutoSize в true - тогда наши шрифты будут лучше видны (если этого не сделать то возможно обрезание части текста). Также увеличьте размер списка - а то выбирать шрифты будет не слишко удобно.
Приступаем к коду. Во-первых, добавьте для формы переменную типа InstalledFontCollection:
...
System.Drawing.Text.InstalledFontCollection fontList =
new System.Drawing.Text.InstalledFontCollection();
...
Тут мы не только объявляем переменную, но и сразу записываем в нее все установленные в системе шрифты.
Теперь добавляем обработчик для зарузки формы:
private void Form1_Load(object sender, System.EventArgs e)
{
// Заполняем список названиями всех шрифтов.
foreach (FontFamily ff in fontList.Families)
{
listBox1.Items.Add(ff.Name);
}
}
И, наконец, пишем к од, который будет выполняться, если выбрать сответствующий шрифт в нашем списке:
private void listBox1_SelectedIndexChanged(object sender,
System.EventArgs e)
{
label1.Font = new Font(listBox1.Text, 20);
}
Все! Запускаем программу. Она будет выглядеть приблизительно так:
Урок 14. Работаем с TreeView
Три урока мы с вами посвятим изучению элемента управления TreeView. Он представляет из себя дерево. У этого элемента есть узлы, у каждого узла могут быть в свойю очередь свои подузлы и т. п.. В элементе TreeView удобно показывать, например, файловую систему компьютера.
На этом уроке мы посмотрим, как можно добавлять и удалять узлы в и из дерева.
Создайте Windows-приложение, на форме разместите элемент TreeView. На панели Toolbox по выглядит так:
Кроме того разместите на форме три кнопки (Button) и одно текстовое поле (TextBox). Для кнопок измените свойствО Name на add, remove и removeAll соответственно. Также для кнопок поменяйте своство Text на Add, Remove и Remove All соответственно. Для текстового поля измените свойства Name и Text на addNode и "" (пустую строку).
В обработчики нажатий на три кнопки добавьте следующий код:
// Добавление узла.
private void add_Click(object sender, System.EventArgs e)
{
// Получаем выделенный узел.
TreeNode node = treeView1.SelectedNode;
// Если ничего не выделено,
if(node==null)
{
// то добавляем в корень.
treeView1.Nodes.Add(addNode.Text);
}
else
{
// Если выделенный узел существует,
// то добавляем к нему.
node.Nodes.Add(addNode.Text);
}
// Очищаем текстовое поле и переводим на него фокус.
addNode.Text="";
addNode.Focus();
}
// Удаление узла.
private void remove_Click(object sender, System.EventArgs e)
{
// Получаем выделенный узел.
TreeNode node = treeView1.SelectedNode;
// Если узел выделен,
if(node!=null)
{
// то его и выделяем.
treeView1.Nodes.Remove(node);
}
else
{
MessageBox.Show("Ничего не выделено");
}
}
// Удаление всех узлов.
private void removeAll_Click(object sender, System.EventArgs e)
{
treeView1.Nodes.Clear();
}
Добавленный код должен быть ясен из комментариев.
Можно запускать программу. После добавления нескольких узлов (имена которых мы вводим в текстовое поле) она может выглядеть она будет приблизительно так:
Обратите внимание, что подузлы будут добавляться к выделенному узлу.
Кнопки Remove и Remove All будут удалять выделенный узел и все узлы соответственно.