System.Drawing.Font - C#

Узнай цену своей работы

Формулировка задачи:

В книжке Вотсона, Нейгела и прочих, дошёл до создания простого текстового редактора. И там есть такой код:
Листинг программы
  1. private void btnBold_Click(object sender, EventArgs e)
  2. {
  3. Font oldFont;
  4. Font newFont;
  5. oldFont = rtbText.SelectionFont;
  6. if(oldFont.Bold)
  7. {
  8. newFont = new Font(oldFont, oldFont.Style & ~FontStyle.Bold);
  9. }
  10. else
  11. newFont = new Font(oldFont, oldFont.Style | FontStyle.Bold);
  12. rtbText.SelectionFont = newFont;
  13. rtbText.Focus();
  14. }
Но я никак не могу понять, как действует конструктор класса Font. Точнее, что это за второй аргумент. И каким образом знак тильды может применяться к свойству. Я думал, что он предназначен только для указания деструктора. И почему бы не использовать что-то вроде
Листинг программы
  1. if(oldFont.Bold)
  2. {
  3. newFont = new Font(oldFont, FontStyle.Regular);
  4. }
  5. else
  6. newFont = new Font(oldFont, FontStyle.Bold);
вместо такой хитрой конструкции как в примере выше?

Решение задачи: «System.Drawing.Font»

textual
Листинг программы
  1. FontStyle f1 = FontStyle.Italic | FontStyle.Bold;
  2. FontStyle f2 = f1 & ~FontStyle.Bold;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы