C# Graphics. Пример рисования свечения. Modern Design GUI.

Egolds

Активный участник
Дней с нами
1.792
Розыгрыши
0
Сообщения
51
Репутация
2
Реакции
62
В этом видео я рисую свечение от курсора на кнопках управления окна.
Этот эффект можно также применить для любых объектов и даже для текста. А если использовать темный цвет - тогда это будет похоже на тень, что позволит создавать действительно впечатляющий графический интерфейс GUI.

 
  • Like
Реакции: edwardfreedom и IceHawk
Не очень хорошая практика, указывать более 2-3 аргументов
Код:
public static void DrawBlurredLine(Graphics graph, Color lineColor, Point p1, Point p2, int maxAlpha, int penWidth)

Вот как бы лучше было

Код:
public static void DrawBlurredLine(Graphics graph, Line line) { }

        public class Line
        {
            public Color LineColor { get; set; }
            public Point P1 { get; set; }
            public Point P2 { get; set; }
            public int MaxAlpha { get; set; }
            public int PenWidth { get; set; }
        }
 
  • Like
Реакции: FEEZY
Не очень хорошая практика, указывать более 2-3 аргументов
Код:
public static void DrawBlurredLine(Graphics graph, Color lineColor, Point p1, Point p2, int maxAlpha, int penWidth)

Вот как бы лучше было

Код:
public static void DrawBlurredLine(Graphics graph, Line line) { }

        public class Line
        {
            public Color LineColor { get; set; }
            public Point P1 { get; set; }
            public Point P2 { get; set; }
            public int MaxAlpha { get; set; }
            public int PenWidth { get; set; }
        }

Почему не очень хорошая практика?
 
Почему не очень хорошая практика?
Это написано в любой книге. И самому удобнее же, легче рефакторить
---------Двойное сообщение соединено: ---------
Почему не очень хорошая практика?
 
Последнее редактирование:
Это написано в любой книге. И самому удобнее же, легче рефакторить
---------Двойное сообщение соединено: ---------

В целом я с этим согласен, для более продвинутых методов я использую прием экземпляров классов, спасибо за ссылку.
Странно что, сами мелкомягкие этого не всегда придерживаются:
C#:
public static System.Windows.Forms.DialogResult Show (
string text,
string caption,
System.Windows.Forms.MessageBoxButtons buttons,
System.Windows.Forms.MessageBoxIcon icon, System.Windows.Forms.MessageBoxDefaultButton defaultButton,
System.Windows.Forms.MessageBoxOptions options,
string helpFilePath, System.Windows.Forms.HelpNavigator navigator,
object param);
 
  • Wow
Реакции: edwardfreedom
годно, как раз что нужно