Уроки C# - Анимация в Windows Forms с амплитудой

Поділитися
Вставка
  • Опубліковано 17 жов 2024
  • Донаты ➜ t.me/win10twea...
    Эксклюзив для спонсоров ➜ / xpuct
    Если недоступна спонсорка ➜ win10tweaker.r...
    #Анимация #WindowsForms #Амплитуда

КОМЕНТАРІ • 142

  • @blackdream9372
    @blackdream9372 3 роки тому +35

    Несколько типов анимаций:
    //простая линейная анимация - без замедления, без ускорения
    double Linear(double curentTime,double startValue,double changeVaue,double duration)
    {
    return changeVaue * curentTime / duration + startValue;
    }
    //квадратичное замедление - ускорение с нулевой скорости
    double QuadraticIn(double curentTime,double startValue,double changeVaue,double duration)
    {
    curentTime /= duration;
    return changeVaue * Math.Pow(curentTime,2) + startValue;
    }
    //квадратичное замедление - ускорение до половины, затем замедление
    double QuadraticOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration / 2;
    if (curentTime < 1)
    {
    return changeVaue / 2 * Math.Pow(curentTime, 2) + startValue;
    }
    return -changeVaue / 2 * (curentTime * (curentTime - 2) - 1) + startValue;
    }
    //кубическое замедление - ускорение с нулевой скорости
    double CubicIn(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration ;
    return changeVaue * Math.Pow(curentTime, 3) + startValue;
    }
    //кубическое ослабление - замедление до нулевой скорости
    double CubicOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration ;
    curentTime--;
    return changeVaue * (Math.Pow(curentTime, 3) +1) + startValue;
    }
    //кубическое ослабление - ускорение до половины, затем замедление
    double CubicInOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration / 2;
    if (curentTime < 1)
    {
    return changeVaue / 2 * Math.Pow(curentTime, 3) + startValue;
    }
    curentTime -= 2;
    return changeVaue / 2 * (Math.Pow(curentTime, 3) + 2) + startValue;
    }
    //квартальное ослабления - ускорение с нулевой скорости
    double QuarterIn(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration;
    return changeVaue * Math.Pow(curentTime, 4) + startValue;
    }
    //квартальное ослабление - замедление до нулевой скорости
    double QuarterOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration;
    curentTime--;
    return -changeVaue * (Math.Pow(curentTime, 4) - 1) + startValue;
    }
    //квартальное ослабление - ускорение до половины, затем замедление
    double QuarterInOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration / 2;
    if (curentTime < 1)
    {
    return changeVaue / 2 * Math.Pow(curentTime, 4) + startValue;
    }
    curentTime -= 2;
    return -changeVaue / 2 * (Math.Pow(curentTime, 4) - 2) + startValue;
    }
    //пятикратное ослабление с ускорение с нулевой скорости
    double QuinticIn(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration;
    return changeVaue * Math.Pow(curentTime, 5) + startValue;
    }
    //пятикратное ослабление - замедление до нулевой скорости
    double QuinticOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration;
    curentTime--;
    return changeVaue * (Math.Pow(curentTime, 5)+1) + startValue;
    }
    //пятиступенчатое ослабление - ускорение до половины, затем замедление
    double QuinticInOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration / 2;
    if (curentTime < 1)
    {
    return changeVaue / 2 * Math.Pow(curentTime, 5) + startValue;
    }
    curentTime -= 2;
    return changeVaue / 2 * (Math.Pow(curentTime, 5) + 2) + startValue;
    }
    //синусоидальное замедление - ускорение от нулевой скорости
    double SinIn(double curentTime, double startValue, double changeVaue, double duration)
    {
    return -changeVaue * Math.Cos(curentTime / duration * (Math.PI / 2)) + changeVaue + startValue;
    }
    //синусоидальное ослабление - замедление до нулевой скорости
    double SinOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    return changeVaue * Math.Sin(curentTime / duration * (Math.PI / 2)) + changeVaue + startValue;
    }
    //синусоидальное ослабление - ускорение до половины, затем замедление
    double SinInOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    return -changeVaue / 2 * (Math.Cos(Math.PI * curentTime / duration) - 1) + startValue;
    }
    //экспоненциальное замедление - ускорение с нулевой скорости
    double ExpIn(double curentTime, double startValue, double changeVaue, double duration)
    {
    return changeVaue * Math.Pow(2, 10 * (curentTime / duration - 1)) + startValue;
    }
    //экспоненциальное ослабление - замедление до нулевой скорости
    double ExpOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    return changeVaue * (-Math.Pow(2, -10 * curentTime / duration) + 1) + startValue;
    }
    //экспоненциальное замедление - ускорение до половины, затем замедление
    double ExpInOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration / 2;
    if (curentTime < 1)
    {
    return changeVaue / 2 * Math.Pow(2, 10 * (curentTime - 1)) + startValue;
    }
    curentTime--;
    return changeVaue / 2 * (-Math.Pow(2, -10 * curentTime) + 2) + startValue;
    }
    //круговое замедление - ускорение с нулевой скорости
    double CirculIn(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration;
    return -changeVaue * (Math.Sqrt(1 - Math.Pow(curentTime, 2)) - 1) + startValue;
    }
    //круговое ослабление - замедление до нулевой скорости
    double CirculOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration;
    curentTime--;
    return changeVaue * Math.Sqrt(1 - Math.Pow(curentTime, 2)) + startValue;
    }
    //круговое замедление - ускорение до половины, затем замедление
    double CirculInOut(double curentTime, double startValue, double changeVaue, double duration)
    {
    curentTime /= duration / 2;
    if (curentTime < 1)
    {
    return -changeVaue / 2 * (Math.Sqrt(1 - Math.Pow(curentTime, 2)) - 1) + startValue;
    }
    curentTime -= 2;
    return changeVaue / 2 * (Math.Sqrt(1 - Math.Pow(curentTime, 2) + 1) + startValue);
    }
    Источник: www.gizma.com/easing/#quad1

    • @blackdream9372
      @blackdream9372 3 роки тому

      @Artyom Trishkin
      double Linear(double curentTime, double startValue, double changeVaue, double duration)
      {
      return changeVaue * curentTime / duration + startValue;
      }
      private async void button1_Click(object sender, EventArgs e)
      {
      double i = 0.01;
      while (panel1.Location.X

    • @ДмитроФокс
      @ДмитроФокс 2 роки тому

      С остановкой событий. чтобы не лагало :)
      {
      InitializeComponent();
      bool Mouse_Enter = true;
      bool Mouse_Leave = true;
      double Linear(double curentTime, double startValue, double changeVaue, double duration)
      {
      curentTime /= duration;
      curentTime--;
      return changeVaue * (Math.Pow(curentTime, 3) + 1) + startValue;
      }
      panel2.MouseEnter += async (s, a) =>
      {
      Mouse_Enter = true;
      Mouse_Leave = false;
      await Task.Run(async () =>
      {
      double i = 0.01;
      while (Mouse_Enter && panel2.Location.X >= panel1.Location.X + 10)
      {
      double lin = Linear(i, panel1.Location.X, Width, 100);
      panel2.Location = new Point((panel2.Location.X - Convert.ToInt32(lin)), panel1.Location.Y);
      await Task.Delay(1);
      i += 0.01;
      }
      });
      };
      panel2.MouseLeave += async (s, a) =>
      {
      Mouse_Enter = false;
      Mouse_Leave = true;
      await Task.Run(async () =>
      {

      double i = 0.01;
      while (Mouse_Leave && panel2.Location.X

  • @walerij
    @walerij 3 роки тому +28

    Никто не рассказывает более смешно про перемещающиеся квадратики! 😄😄😄😄

  • @Dnlk-mi6pf
    @Dnlk-mi6pf 3 роки тому +16

    Балдёж. Каждую ночь ролик, как раз делать нечего, вот пополняю знания

    • @zarevo25
      @zarevo25 3 роки тому

      Иди модули для тг юзербота пилить, делать говорит ему нечего))

    • @Dnlk-mi6pf
      @Dnlk-mi6pf 3 роки тому

      @@zarevo25 дай идей тогда xd

    • @zarevo25
      @zarevo25 3 роки тому

      @@Dnlk-mi6pf цензор на свои сообщения уже делали? Вроде не особо сложно звучит, а вроде была бы полезная штука

  • @DeXMask
    @DeXMask 3 роки тому +5

    я: - когда уже новые уроки по C#
    Христ через полгода : - ИИИИ бац бац бац бац бац бац бац бац
    я: - а теперь я не успеваю за ним)))
    Спасибо большое за уроки!)))) очень помогают

  • @ruslansobr
    @ruslansobr 3 роки тому +3

    Ох, не перестаёте удивлять! Только что по этой простой формуле нашёл решение одной своей старой задачи связаной с обвесами персонажа. Она вообще на 3д движке и на другом языке, но конечно же всё сработало!)) Ещё раз огромное спасибо!!!

  • @kolyawps
    @kolyawps 3 роки тому +5

    Только зашел посмотреть не вышло ли чего нового.
    И тут батц приходит уведомление о новом видео и тут я понял что удачно зашел :)

  • @ВиллисКантор
    @ВиллисКантор 3 роки тому +3

    Хачатур,слов нет! Одни эмоции,спасибо за знание!!! Удачи Вам!!!

  • @cry_fly8705
    @cry_fly8705 3 роки тому +5

    Ну ты зачастил.Радуешь)

  • @ashimovroman
    @ashimovroman 3 роки тому +2

    Абалдеть! Ну это ж просто булочка!!! :)

  • @РоманСуворов-й2т

    Топовые хаки для повседневной разработки, лайк)

  • @BlendLogDev
    @BlendLogDev 3 роки тому +6

    В програмировании нужна больше логика, чем математика. Я, например, не увидел ничего сложно, никакие логарифмы, интегралы и прочую шелуху. А visual studio, судя по всему, прошла магистратуру, аспирантуру и Эйс Вентуру🤣

    • @phat80
      @phat80 3 роки тому +4

      Извини, но ты написал бред. Все зависит от направления деятельности. Если пишешь какое-то CRUD приложение или системную утилиту, да, математика не нужна. Но если ты вылезешь за пределы таких простеньких приложений и взглянешь на программы для анализа, графические программы, 3D движки и прочее, то там главенствует математика, особенно если тебе надо написать что-то с нуля, а не воспользоваться готовой библиотекой. Так вот, настоящий программист и отличается от обычного кодера (и хорошо если не говнокодера) тем, что он может писать любой тип программ, а не только простейшую программульку из 3х форм с кнопками и полями ввода. Так что на самом деле, если хочешь именоваться именно программистом, придется окунуться в математику. Как минимум, понадобится что-то понимать в линейной алгебре.

    • @minimalstory
      @minimalstory Рік тому

      Благодаря тебе, я до сих пор ценен на рынке труда как программист) никого не слушай и не учи математику, это все зло))

  • @СерОрл-ш5м
    @СерОрл-ш5м 3 роки тому +2

    Была бы цель, а методы реализации найдутся! пальчик жать не забываю ;)

  • @mattgarstkasfan8602
    @mattgarstkasfan8602 3 роки тому

    6:13 кнопка повтора, это гениально))

  • @ZEkA10000
    @ZEkA10000 Місяць тому

    Урок интересный и неожиданно он мне пригодился в написании игры, а-ля PyGame. Делал плавную камеру и такая плавность очень была нужна.
    Единственное, но: Формула, что была применена здесь меня ввела в ступор, отчего я применил следующую формулу, основываясь на уроке.
    if panel2.Location.X > panel1.Location.X+10) { panel2.Location = new Point(Math.Abs((panel1.Location.X+10) - panel2.Location.X) / 20) }
    Если проще
    Если Панель2 дальше Панели1 То
    _ Сдвинуть Панель2 на абсолют(ДистанцияМеждуПанелями) поделённое на 20
    Конец

  • @orakul_azovstal
    @orakul_azovstal 3 роки тому +2

    Приветствую вас граждане товарищи, ХрисТ это Джон Скит в наших интернетах, сложное не упрощая доносит до понимания просто и легко. ХрисТ может пора и свою книгу выпустить в свет?

  • @ArchDevWorkshop
    @ArchDevWorkshop 2 роки тому +1

    Хачатур, большое тебе спасибо за уроки!
    Подскажи, сколько лет ты программируешь?

    • @XpucT
      @XpucT  2 роки тому +2

      4 года.

  • @spartansk3052
    @spartansk3052 Рік тому +1

    @XpucT а ты можешь по WinUI 3 снять такие же отличные видосы?

  • @ХасанДжумашов-ц9т
    @ХасанДжумашов-ц9т 3 роки тому +1

    Здравствуйте для начинающих программирования c# windows forms какой книги рекомендуете заранее спасибо.

    • @XpucT
      @XpucT  3 роки тому

      Добрый день.
      1. Герберт Шилдт C# 4.0
      ijevanlib.ysu.am/wp-content/uploads/2017/12/C-4.0-полное-руководство-Герберт-Шилдт_2011.pdf
      2. Лучшие Уроки C#
      ua-cam.com/play/PL05SB3rBbUsraqiEUeS70RKhVAu97nGeb.html

  • @vladfoton
    @vladfoton 3 роки тому +1

    Подача материала как всегда на высоте !!!

  • @elena_khizhnyak
    @elena_khizhnyak 3 роки тому +1

    Красота 👍👍👍
    Большое спасибо!)

  • @phat80
    @phat80 3 роки тому +1

    10:40 Ну стоит сказать, что это не магия си шарпа, а магия в принципе любого языка - стандартное логическое отрицание. Единственное, что в некоторых древних языках надо написать побольше символов - not вместо !.

  • @mqst
    @mqst 3 роки тому +2

    Спасибо за видео!

  • @van_k41
    @van_k41 3 роки тому +5

    Всем привет!
    Теперь интересно как нарисовать такую привьюху в люстре. По всем фронтам подтягиваете нас и математика и анимация)

  • @aquarium89
    @aquarium89 3 роки тому +2

    это даже не самая занудная математика которая мне встречалась в принципе 😁

  • @ifledged1957
    @ifledged1957 2 роки тому +1

    Здравствуйте, подскажите пожалуйста, как оформить спонсорку, хочу Вас поддержать за материал, к тому же, вроде как есть еще крутые материалы для спонсоров?

    • @XpucT
      @XpucT  2 роки тому

      Приветствую 🖐
      На данный момент спонсорка недоступна только тем, кто из России, т.к. UA-cam это ограничил.
      Но ситуация временная. Я сам из России и просто ждём 👏

    • @ifledged1957
      @ifledged1957 2 роки тому +1

      @@XpucT жаль конечно , но в любом случае ещё раз спасибо за Ваш труд)

  • @remontunasdotru
    @remontunasdotru 3 роки тому +1

    Спасибо! А Win10Tweaker это winforms или wpf?

    • @XpucT
      @XpucT  3 роки тому +2

      Windows Forms

  • @title6322
    @title6322 3 роки тому +2

    Можете пожалуйста в следующем видео ответить на вопрос:wpf: я хочу в textblock генерировать рандомный текст, точнее в Run. Там будет бегать просто рандомный текст. Пробовал string animation, но value указывается один раз, поэтому создал dispatcher timer и через 30 мс меняет текст в run на рандомный (одинаковой длины). Что посоветуете?

  • @spartansk3052
    @spartansk3052 Рік тому +1

    @XpucT поискал инфу в ютубе и нет видео на русском языке, начало работы, расширение для vs конструктор так сказать. Хоть и есть от майкрософт приложение галерея, кнопки вставить и что то еще не проблема, теми кусками кода, что прилагается. Например форму стандартную отключить и самому управление окном сделать. Ну в общем в таком духе, было бы очень классно из твоих уст. Или вовсе MAUI. Разрабатываешь на этом?

  • @SerhiiAponchyk
    @SerhiiAponchyk 2 роки тому +1

    Срочно нужно пройти курс по улучшению логического мышления :))))

  • @lodatmos918
    @lodatmos918 Рік тому +1

    Спасибо)

  • @mikhail5402
    @mikhail5402 3 роки тому +1

    Спасибо, то что надо.

  • @fhhvgggh1698
    @fhhvgggh1698 3 роки тому +1

    Христ привет помню ты делал видео про драгндроп с переносом файлов, вопрос можно ли из формы вытащить файл как из папки держа файл мышкой?

    • @XpucT
      @XpucT  3 роки тому

      Привет 🖐
      Интересный вопрос =)
      Ни разу не сталкивался. Надо будет попробовать.

  • @OZREDOZRED
    @OZREDOZRED 3 роки тому +1

    Доброго времени суток)
    Небольшой вопрос не связанный с темой ролика, как ты относишься к небольшому редизайну W10T?
    Есть ли смысл попытаться придумать небольшой редизайн и есть ли вообще возможность того что ты его будешь делать?

  • @Pravda-bw3tj
    @Pravda-bw3tj 3 роки тому +2

    ВЕРНУЛСЯ!!1

  • @ГосподинАристократ

    Спасибо за урок! 😀

  • @_nastafia_2727
    @_nastafia_2727 10 місяців тому

    Здравствуйте, никто не может подсказать, какое название у данной темы оформления Visual Studio?

    • @XpucT
      @XpucT  10 місяців тому

      Добрый день.
      Это Моя авторская тема. Доступна на Boosty.

  • @PravdaGe
    @PravdaGe 3 роки тому +1

    Полезный урок !👍 Спасибо ! , Но нашелся кто то у кого по математике была 2(ка) и он поставил 👎

  • @davidmazayan7668
    @davidmazayan7668 3 роки тому +1

    Хачатур благодаря твоим стараниям я многому добилась в программировании. Хотелось посмотреть как работать с API как создать свой. Как подключить к существующей API на WinForms

  • @loger_1328
    @loger_1328 3 роки тому +2

    Сделай видео про сокеты!

  • @egor2249
    @egor2249 3 роки тому +1

    Добрый день. Помогите пожалуйста с поворотом объекта. Что нужно написать чтобы мой pictureBox1 плавно вращался по часовой стрелке.

    • @XpucT
      @XpucT  3 роки тому +1

      Image img = pictureBox1.Image;
      img.RotateFlip(RotateFlipType.Rotate90FlipNone);
      pictureBox1.Image = img;

  • @ОлексійЄвдокімов-ю7е

    Здравствуйте. А как можно сделать анимацию сортировки одномерного массива пузырьковым методом?

  • @Silver_men_rev
    @Silver_men_rev 4 місяці тому

    Добрый вечер, подскажите пожалуйста начинающему программисту как сделать такой момент, на форму кидаю панель, на панель забросил pictureBox, вопрос как сделать масштабирование pictureBox так что бы картинка в pictureBox была увеличена как в Painte, но при выделении области и её сохранении, сохранённый фрагмент картинки был не увеличенного масштаба а абсолютного как на экране? 3 дня сижу ну ни как, уже и в инете и интеллект суперский спрашивал, толку мало, pictureBox увеличивается как надо, применяю к нему интерполяцию, всё работает так как мне надо, но при сохранении фрагмент сохраняется увеличенный. Спасибо за ранее за помощь.

  • @TheDimonDK
    @TheDimonDK 3 роки тому +5

    Здравствуй, пожалуйста, сделай урок про создание/загрузку XML файла, ищу в интернете, не могу найти понятных инструкций!

    • @lexmakes
      @lexmakes 3 роки тому

      Там обычно ракетостроение предлагают, сам сталкивался

  • @drakula_6175
    @drakula_6175 3 роки тому +2

    Можно ли создать форму, где будут кнопки для отключения служб(Wifi, звук)?

    • @XpucT
      @XpucT  3 роки тому +3

      Можно. Я не против 👍

  • @ЕвгенийКривоносов-о1ъ

    Спасибо за урок! Подскажи, а что за тема у тебя в vs19?

    • @XpucT
      @XpucT  2 роки тому +1

      Это не просто тема, это полностью авторская переработка всего интерфейса Visual Studio, над которой Я работал 3 месяца. Тут не просто красиво, а полезно для глаз, подробнее об этом Я рассказывал в видео для спонсоров:
      ua-cam.com/users/XpucTcommunity
      Тема, доп.материалы и эксклюзив становится доступным сразу, как становишься спонсором канала.

    • @ЕвгенийКривоносов-о1ъ
      @ЕвгенийКривоносов-о1ъ 2 роки тому +1

      @@XpucT Хорошо, спасибо. Скажи, там есть видео урок по созданию хотя бы похожей темы? Или ты рассказывал просто плюсы своей темы?

    • @XpucT
      @XpucT  2 роки тому

      @@ЕвгенийКривоносов-о1ъ Да и Да.

  • @factnet5108
    @factnet5108 3 роки тому +1

    Хачатур покажи как вывести видео файлы (несколько) в WinForms, которые будут выбраны через OpenFileDialog или методом перетаскивания. Чтоб они показывались в WinForms как в обычной папке.

  • @fhhvgggh1698
    @fhhvgggh1698 3 роки тому +1

    эх были бы у винформ нормальные тени для контролов можно было бы вообще не обращать внимание на wpf и xaml

  • @maniakm897
    @maniakm897 3 роки тому +1

    В цыкле while при помощи оператора new создаешь новый екземпляр класса Point. Может лучше екземпляр данного класса создать один раз при запуске программы (тоесть за пределамы цыкла), а в цыкле while просто менять параметры созданного екземпляра? Или вызуалке пофиг на ето?

    • @XpucT
      @XpucT  3 роки тому

      В данном случае роли нет.

  • @gesriot
    @gesriot 3 роки тому +1

    Круто!

  • @kpanat
    @kpanat Рік тому

    И тут я узнал, что в C# оказывается тоже есть стрелочные функции. Ну и ну... А элементы функционального программирования там есть интересно? А что ещё? Как можно делать анимацию если у вас нет таймлайна?! Представьте себе что у вас множественные разнообразные движения. Хотя что там представлять откройте Adobe After Effect там всё есть... Но они должны быть синхронизированы. Для этого надо единое время... Ой..

  • @АлександрЛукьяненко-ц1з

    Получил эстетическое удовольствие от анимации. Прям стыдно

  • @felikssstepanovs2861
    @felikssstepanovs2861 2 роки тому +1

    Привет Хачатур! Спасибо вам за крутие видео уроки, очень ценные.
    Сделал панели как в вашем видео уроке, все отлично работает.
    Но мне надо как то закрепить панель, которая наезжает на вторую.
    Сделал два чекбокса. Если нажать на первый чекбокс то панель наезжает на вторую и она должна оставаться там даже, а если нажать на второй чекбокс то функция туда-обратно опять бы работало.
    Но мне не получается это сделать. Пробовал таймер старт, стоп не помогает.
    Как можно решить эту задачу? Помогите пожалуйста.

    • @XpucT
      @XpucT  2 роки тому

      Привет 🖐
      Так ведь точно также, как и с expectation, добавляешь bool и ориентируешься на него.
      while (!freeze && !expectation....)
      То есть если галочка стоит, то переменной freeze делаешь true и никуда ничего не тронется.
      Снял галочку freeze, стало false и попадёт в while.

    • @felikssstepanovs2861
      @felikssstepanovs2861 2 роки тому +1

      @@XpucT Огромное вам спасибо за помощь. Теперь все работает отлично. 🙂

  • @sergeyantimonov6370
    @sergeyantimonov6370 3 роки тому +1

    Все хорошо, но как это выглядит на wpf?

  • @DeXMask
    @DeXMask 2 роки тому +1

    интересно, а можно ли в WF сделать закругленные края самой формы или WPF мне за шиворот?

    • @XpucT
      @XpucT  2 роки тому +1

      Можно.
      В плейлисте про это есть ➜ WinAPI ua-cam.com/play/PL05SB3rBbUsraqiEUeS70RKhVAu97nGeb.html

    • @DeXMask
      @DeXMask 2 роки тому

      @@XpucT большущее спасибо))))))

  • @MysteryMarshak
    @MysteryMarshak 3 роки тому +1

    Превью би лайк: ААААаААаААААааАаа

  • @Scr1pted
    @Scr1pted 2 роки тому

    У меня в Visual studio была ошибка Ошибка при генерации кода "cursor', Произошла следущая ошибка: "Корневой узел ссылок недоступен" Прошу помогите

  • @loger_1328
    @loger_1328 3 роки тому +2

    Годнооооо))

  • @MrInc_o.o
    @MrInc_o.o Рік тому +1

    Здравствуйте, я сделал как вы говорили , но не могу понять. У меня наблюдается один бесящий баг.
    У меня на форме меню из 4х кнопок с одинаковой анимацией(та что с амплитудой) и когда проводишь по ней мышью она увеличивает размер кнопки , но тут и баг , иногда когда ты проводишь мышью (быстро) она останавливается и парой даже глючит. Помогите пожалуйста😅

    • @XpucT
      @XpucT  Рік тому

      Вот в таких моментах очень сильно прокачивается мозг.
      Нужно понять, что именно способствовало тому, чтобы во время одного сценария проскочил другой и предотвратить его с помощью ещё одного bool в ещё одном if.
      Занимайтесь 👍
      Ничто так не развивает интеллект, как решение нестандартной задачи.
      Как разложить сложное на простое. Как в быстром увидеть медленное.

    • @MrInc_o.o
      @MrInc_o.o Рік тому

      @@XpucT у меня он настолько прокачался, что у меня голова теперь болит XD. Я какие только методы не пробовал

    • @MrInc_o.o
      @MrInc_o.o Рік тому

      @@XpucT я пытался кстати с bool и if
      Пытался построить такую структуру
      If( ThisActive = true ){ MouseEnter () }
      ...
      MouseEnter(){Анимация ... ThisActive = False} , но понял что я не могу вернуть true , просто не откуда возвращать. Пошёл и нашёл такой способ MouseMove , М-да, так себе способ , но он получился , но теперь проблема в скорости анимации и вот её нельзя изменить XD
      Из одной проблемы возникает другая

    • @MrInc_o.o
      @MrInc_o.o Рік тому +1

      @@XpucT но кстати, очень оригинальный ответ. И в принципе он помог ;)

  • @GhostRescue
    @GhostRescue 3 роки тому +2

    Большое спасибо лайфхак, раньше использовал таймер, и без амплитуды, но это горздо красивее и в тоже время проще
    Хотелось бы узнать ещё лайфхак, как реализовать многостраничность на одной форме )))

    • @СергейНосовец-я6в
      @СергейНосовец-я6в 2 роки тому

      При помощи юзер контролов, например:
      public void changeUcontrol(Panel parentContainer, UserControl needView, string nameControl, DockStyle needViewDockStyle = DockStyle.Fill)
      {
      if (parentContainer.Controls.ContainsKey(nameControl)) parentContainer.Controls[nameControl].Dispose();
      if (!parentContainer.Controls.ContainsKey(nameControl))
      {
      needView.Dock = needViewDockStyle;
      parentContainer.Controls.Add(needView);
      }
      parentContainer.Controls[nameControl].BringToFront();
      }

  • @TheStonedFox
    @TheStonedFox 3 роки тому

    А можно ли как то на win forms сделать подобие acrylic window как на wpf?

    • @XpucT
      @XpucT  3 роки тому

      Можно. Вот один из рабочих вариантов:
      stackoverflow.com/questions/56481230/how-to-create-windows-10-acrylic-transparency-effect-in-winform-c-sharp

  • @bon9010
    @bon9010 3 роки тому +2

    Найс

  • @kiya2293
    @kiya2293 3 роки тому +2

    Вопрос не по теме, у кого-нибудь ещё кроме меня есть баг на windows 11 с плавными окнами?

    • @XpucT
      @XpucT  3 роки тому +1

      У всех. На любых видеокартах и драйверах.

    • @kiya2293
      @kiya2293 3 роки тому

      @@XpucT понятненько, спасибо!

  • @FunnyDony
    @FunnyDony 3 роки тому +1

    Блин оставлял сложный комент с вопросом и кодом. Вижу уведомление о том что ты ответил, а коментария под видио не вижу... Либо из-за того, что я его много раз правил и комент ушел в бан или хз...

    • @XpucT
      @XpucT  3 роки тому +1

      Возможно, ссылка была в комменте ┐('~`;)┌

  • @cpvls
    @cpvls 3 роки тому +1

    Ого, а что такое обфускация?

    • @XpucT
      @XpucT  3 роки тому

      ru.wikipedia.org/wiki/Обфускация_(программное_обеспечение)

  • @Black_and_White_BEAR
    @Black_and_White_BEAR 3 роки тому

    А можно, по поводу Windows 10 настроек?

    • @XpucT
      @XpucT  3 роки тому

      Что можно по поводу Windows 10 настроек?
      Постарайтесь задать вопрос понятно 👍

    • @Black_and_White_BEAR
      @Black_and_White_BEAR 3 роки тому

      @@XpucT @XpucT Здравствуйте, уважаемый XpucT! Очень нравиться Ваш конент. Я считаю, что только Вы разбираетесь в системе и в программирование. А программа, взрыв мозга. Только я потерял активацию, после инцидента с bios. Можно связаться по этому поводу? Раньше у Вас не было сайта, такого крутого.
      P.s.
      А по поводу моего вопроса - на втором Вашем канале, есть плейлист по "windows". Сняли 12 частей. Будете продолжать эту тему? Мне всегда, нравится как Вы объясняете. Про антивируы, про portable, про малоизвестные программы. Про то, что не стоит качать какие то сборки, только оф версию и самому шаг за шагом самостоятельно настраивать.
      Удивило, что у Вас системный диск, так мало весит.
      Я не мог написать на сайте. Хоть сейчас смогу попросить - выложите в открытом доступе, Ваш персональный образ Windows 10! Чтобы люди могли почувствовать руку мастера (хотя я считаю бога) по правильной настройке системы.
      С уважением, Михаил Сергеевич!

    • @XpucT
      @XpucT  3 роки тому +1

      ​@@Black_and_White_BEAR спасибо за развёрнутый вопрос =)
      Видео на канале JailbreakVideo, само собой, также в планах, но темы набираются медленнее, т.к. почти всё свободное время уходит на изучение того, что можно исправить в Windows и сразу же само собой добавляю это в Win 10 Tweaker. Так или иначе, темы есть и продолжение видео на том канале будут.
      Касаемо активации - задайте вопрос на форуме, чтобы Я смог найти Вас по e-mail или по истории. Не понял, почему не можете зайти на сайт.
      И насчёт сборок. Я выбрал программирование и развитие программы как раз потому, чтобы у каждого человека был выбор. Я не хочу за человека решать иметь ему принтер или нет. Ибо будь Моя воля принтеров вообще бы домашних не было. Но это Я. Отдельный взгляд. А делать полу под себя, полу под кого-то... Нет. Это не наш путь. Наш путь Win 10 Tweaker, где каждый выбирает, что ему нужно. И если долго настраивать, может сохранить бэкап настроек и вуаля, круче любой сборки.

  • @renzo5274
    @renzo5274 Рік тому

    Что за тема для VS ??

    • @XpucT
      @XpucT  Рік тому

      Это не просто тема, это полностью авторская переработка всего интерфейса Visual Studio, над которой Я работал 3 месяца. Тут не просто красиво, а полезно для глаз, подробнее об этом Я рассказывал в видео для спонсоров:
      ua-cam.com/users/XpucTcommunity
      Тема, доп.материалы и эксклюзив становится доступным сразу, как становишься спонсором канала.
      Если недоступна спонсорка, весь дополнительный контент есть на Boosty ➜ boosty.to/xpuct

  • @pixel183
    @pixel183 3 роки тому +1

    это издевательство я тут WPF грызу и тут бац 🥺