Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 3-4 - Графический интерфейс.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
261.12 Кб
Скачать

14Система координат. Альтернативные единицы измерения

Значение

Используемая единица измерения

Display

1/75 часть дюйма

Document

1/300 часть дюйма

Inch

Дюйм

Millimeter

Pixel

Пиксел

Point

1/72 часть дюйма

private void MainForm_Paint(object sender, PaintEventArgs e)

{

e.Graphics.PageUnit = GraphicsUnit.Inch;

e.Graphics.DrawRectangle(new Pen(Color.Red,5), 0,0,100,100);

}

Перенос начала координат

private void MainForm_Paint(object sender, PaintEventArgs e)

{

e.Graphics.PageUnit = GraphicsUnit.Point;

e.Graphics.TranslateTransforn(100,100);

e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0,0,100,100);

}

15 Цвет

Color c = Color.Magenta

Член

Назначение

FromArgb()

Возвращает объект типа Color. Для него указываются числовые значения компонент

FromKnownColor()

Возвращает объект типа Color. Используются значения из перечисления

FromName

Возвращает объект типа Color. Используются строковые значения

A, R, G, B

Возвращают значения отдельных компонент

IsNameColor(), Name

Эти члены применяются к текущему объекту Color. Они позволяют определить, соответствует ли какому-либо из именованных цветов

GetBrightness(), GetHue(), GetSaturation()

Переход к другой цветосистеме (яркость, оттенок, насыщенность)

ToArgb()

Возвращает числовые значения ARGB для объекта Color

ToKnownColor()

Возвращает значение из перечисления KnownColor для объекта Color

Класс ColorDialog

Находится в пространстве имен System.Windows.Forms

1. Создаем объект класса ColorDialog.

2. Открываем диалоговое окно для пользователя методом ShowDialog();

3. После выбора пользователем цвета, получаем объект Color c помощью свойства Dialog. Color.

public class ColorDlgForm: System.Windows.Forms.Form

{

//работаем с классом ColorDialog

private System.Windows.Forms.ColorDialog();

public ColorDlgForm()

{

colorDlg = new System.Windows.Forms. ColorDialog();

this.MouseUp += MouseEventHandler(this.ColorDlgForm_MouseUp);

}

private void ColorDlgForm_MouseUp(object sender, MouseEventsArgs e)

{

if (colorDlg.ShowDialog() != DialogResult.Cancel)

{

CurrColor = colorDlg.Color;

this.BackColor = CurrColor;

string strARGB = colorDlg.Color.ToString();

MessageBox.Show(strARGB, “ColorIs”);

}

}

}

16

Font myFont = new Font(«Times New Roman», 12, FontStyle.Bold |FontStyle.Underline);

17

private void MainForm_Paint(object sender, PaintEventArgs e)

{

Graphics g = e.Graphics;

FontFamily myFamily = new FontFamily("Verdana");

Font myFont = new Font(myFamily, 12);

int y = 0; // Эта переменная будет использоваться у нас для смещения по y

int fontHeight = myFont.Height; // Получаем высоту шрифта в пикселах

// Выводим информацию о единицах измерения, используемых для членов FontFamily

this.Text = "Measurements are in GraphicsUnit." + myFont.Unit.ToString();

g.DrawString("The Verdana family.", myFont, Brushes.Blue, 10, y);

y += 20;

// Выводим всю информацию о нашем семействе шрифтов

g.DrawString("Ascent for bold Verdana: " +

myFamily.GetCellAscent(FontStyle.Bold),

myFont, Brushes.Black, 10, y + fontHeight);

y += 20;

g.DrawString("Descent for bold Verdana: " +

myFamily.GetCellDescent(FontStyle.Bold),

myFont, Brushes.Black, 10, y + fontHeight);

y += 20;

g.DrawString("Line spacing for bold Verdana: " +

myFamily.GetLineSpacing(FontStyle.Bold),

myFont, Brushes.Black, 10, y + fontHeight);

y += 20;

g.DrawString("Height for bold Verdana: " + myFamily.GetEmHeight(FontStyle.Bold),

myFont, Brushes.Black, 10, y + fontHeight);

y += 20;

}