Создаем свойство PenWidth, которое будет
Создаем свойство PenWidth, которое будет возвращать значение толщины для пера главной формы:public float PenWidth { get { float f = Decimal.ToSingle(numericUpDown1.Value); return f; } }
При вызове диалогового окна на панели сразу будет появляться эскиз линии по умолчанию, для этого создаем обработчик события Paint формы, в котором вызываем метод DrawLine:
private void LineWidth_Paint(object sender, System.Windows.Forms.PaintEventArgs e) { DrawLine(); }
Связываем перемещение ползунка элемента trackBar1 со значением в поле элемента numericUpDown1, для чего в обработчике события Scroll вводим переменную val, связывающую свойства Value этих элементов:
private void trackBar1_Scroll(object sender, System.EventArgs e) { int val = trackBar1.Value; numericUpDown1.Value = val; }
Аналогично, для связывания значения в поле элемента numericUpDown1 с перемещением ползунка в обработчике события ValueChanged вводим переменную val2:
private void numericUpDown1_ValueChanged(object sender, System.EventArgs e) { int val2 = (int)numericUpDown1.Value; trackBar1.Value = val2; DrawLine(); }
В этом обработчике мы также вызываем метод DrawLine для вывода эскиза линии на форме. Последнее, что нам осталось сделать, — добавить обработчик в пункте меню "Толщина линии" главной формы:
private void mnuWidth_Click(object sender, System.EventArgs e) { LineWidth diag = new LineWidth(); if (diag.ShowDialog(this)== DialogResult.OK) { mainPen = new Pen(mainPen.Color, diag.PenWidth); } }
Запускаем приложение. Теперь можно рисовать не только разными цветами, но и разной толщиной пера (рис. 6.19).

Рис. 6.19. Приложение EasyPaint и его диалоговое окно "Толщина линии"
На диске, прилагаемом к книге, вы найдете приложение EasyPaint (Code\Glava6\ EasyPaint).
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий