я: - когда уже новые уроки по C# Христ через полгода : - ИИИИ бац бац бац бац бац бац бац бац я: - а теперь я не успеваю за ним))) Спасибо большое за уроки!)))) очень помогают
Ох, не перестаёте удивлять! Только что по этой простой формуле нашёл решение одной своей старой задачи связаной с обвесами персонажа. Она вообще на 3д движке и на другом языке, но конечно же всё сработало!)) Ещё раз огромное спасибо!!!
В програмировании нужна больше логика, чем математика. Я, например, не увидел ничего сложно, никакие логарифмы, интегралы и прочую шелуху. А visual studio, судя по всему, прошла магистратуру, аспирантуру и Эйс Вентуру🤣
Извини, но ты написал бред. Все зависит от направления деятельности. Если пишешь какое-то CRUD приложение или системную утилиту, да, математика не нужна. Но если ты вылезешь за пределы таких простеньких приложений и взглянешь на программы для анализа, графические программы, 3D движки и прочее, то там главенствует математика, особенно если тебе надо написать что-то с нуля, а не воспользоваться готовой библиотекой. Так вот, настоящий программист и отличается от обычного кодера (и хорошо если не говнокодера) тем, что он может писать любой тип программ, а не только простейшую программульку из 3х форм с кнопками и полями ввода. Так что на самом деле, если хочешь именоваться именно программистом, придется окунуться в математику. Как минимум, понадобится что-то понимать в линейной алгебре.
Приветствую вас граждане товарищи, ХрисТ это Джон Скит в наших интернетах, сложное не упрощая доносит до понимания просто и легко. ХрисТ может пора и свою книгу выпустить в свет?
Урок интересный и неожиданно он мне пригодился в написании игры, а-ля 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 Конец
10:40 Ну стоит сказать, что это не магия си шарпа, а магия в принципе любого языка - стандартное логическое отрицание. Единственное, что в некоторых древних языках надо написать побольше символов - not вместо !.
Можете пожалуйста в следующем видео ответить на вопрос:wpf: я хочу в textblock генерировать рандомный текст, точнее в Run. Там будет бегать просто рандомный текст. Пробовал string animation, но value указывается один раз, поэтому создал dispatcher timer и через 30 мс меняет текст в run на рандомный (одинаковой длины). Что посоветуете?
@XpucT поискал инфу в ютубе и нет видео на русском языке, начало работы, расширение для vs конструктор так сказать. Хоть и есть от майкрософт приложение галерея, кнопки вставить и что то еще не проблема, теми кусками кода, что прилагается. Например форму стандартную отключить и самому управление окном сделать. Ну в общем в таком духе, было бы очень классно из твоих уст. Или вовсе MAUI. Разрабатываешь на этом?
Здравствуйте, подскажите пожалуйста, как оформить спонсорку, хочу Вас поддержать за материал, к тому же, вроде как есть еще крутые материалы для спонсоров?
Приветствую 🖐 На данный момент спонсорка недоступна только тем, кто из России, т.к. TH-cam это ограничил. Но ситуация временная. Я сам из России и просто ждём 👏
Хачатур благодаря твоим стараниям я многому добилась в программировании. Хотелось посмотреть как работать с API как создать свой. Как подключить к существующей API на WinForms
Доброго времени суток) Небольшой вопрос не связанный с темой ролика, как ты относишься к небольшому редизайну W10T? Есть ли смысл попытаться придумать небольшой редизайн и есть ли вообще возможность того что ты его будешь делать?
Хачатур покажи как вывести видео файлы (несколько) в WinForms, которые будут выбраны через OpenFileDialog или методом перетаскивания. Чтоб они показывались в WinForms как в обычной папке.
И тут я узнал, что в C# оказывается тоже есть стрелочные функции. Ну и ну... А элементы функционального программирования там есть интересно? А что ещё? Как можно делать анимацию если у вас нет таймлайна?! Представьте себе что у вас множественные разнообразные движения. Хотя что там представлять откройте Adobe After Effect там всё есть... Но они должны быть синхронизированы. Для этого надо единое время... Ой..
В цыкле while при помощи оператора new создаешь новый екземпляр класса Point. Может лучше екземпляр данного класса создать один раз при запуске программы (тоесть за пределамы цыкла), а в цыкле while просто менять параметры созданного екземпляра? Или вызуалке пофиг на ето?
Это не просто тема, это полностью авторская переработка всего интерфейса Visual Studio, над которой Я работал 3 месяца. Тут не просто красиво, а полезно для глаз, подробнее об этом Я рассказывал в видео для спонсоров: th-cam.com/users/XpucTcommunity Тема, доп.материалы и эксклюзив становится доступным сразу, как становишься спонсором канала.
Привет Хачатур! Спасибо вам за крутие видео уроки, очень ценные. Сделал панели как в вашем видео уроке, все отлично работает. Но мне надо как то закрепить панель, которая наезжает на вторую. Сделал два чекбокса. Если нажать на первый чекбокс то панель наезжает на вторую и она должна оставаться там даже, а если нажать на второй чекбокс то функция туда-обратно опять бы работало. Но мне не получается это сделать. Пробовал таймер старт, стоп не помогает. Как можно решить эту задачу? Помогите пожалуйста.
Привет 🖐 Так ведь точно также, как и с expectation, добавляешь bool и ориентируешься на него. while (!freeze && !expectation....) То есть если галочка стоит, то переменной freeze делаешь true и никуда ничего не тронется. Снял галочку freeze, стало false и попадёт в while.
Добрый вечер, подскажите пожалуйста начинающему программисту как сделать такой момент, на форму кидаю панель, на панель забросил pictureBox, вопрос как сделать масштабирование pictureBox так что бы картинка в pictureBox была увеличена как в Painte, но при выделении области и её сохранении, сохранённый фрагмент картинки был не увеличенного масштаба а абсолютного как на экране? 3 дня сижу ну ни как, уже и в инете и интеллект суперский спрашивал, толку мало, pictureBox увеличивается как надо, применяю к нему интерполяцию, всё работает так как мне надо, но при сохранении фрагмент сохраняется увеличенный. Спасибо за ранее за помощь.
Здравствуйте, я сделал как вы говорили , но не могу понять. У меня наблюдается один бесящий баг. У меня на форме меню из 4х кнопок с одинаковой анимацией(та что с амплитудой) и когда проводишь по ней мышью она увеличивает размер кнопки , но тут и баг , иногда когда ты проводишь мышью (быстро) она останавливается и парой даже глючит. Помогите пожалуйста😅
Вот в таких моментах очень сильно прокачивается мозг. Нужно понять, что именно способствовало тому, чтобы во время одного сценария проскочил другой и предотвратить его с помощью ещё одного bool в ещё одном if. Занимайтесь 👍 Ничто так не развивает интеллект, как решение нестандартной задачи. Как разложить сложное на простое. Как в быстром увидеть медленное.
@@XpucT я пытался кстати с bool и if Пытался построить такую структуру If( ThisActive = true ){ MouseEnter () } ... MouseEnter(){Анимация ... ThisActive = False} , но понял что я не могу вернуть true , просто не откуда возвращать. Пошёл и нашёл такой способ MouseMove , М-да, так себе способ , но он получился , но теперь проблема в скорости анимации и вот её нельзя изменить XD Из одной проблемы возникает другая
Это не просто тема, это полностью авторская переработка всего интерфейса Visual Studio, над которой Я работал 3 месяца. Тут не просто красиво, а полезно для глаз, подробнее об этом Я рассказывал в видео для спонсоров: th-cam.com/users/XpucTcommunity Тема, доп.материалы и эксклюзив становится доступным сразу, как становишься спонсором канала. Если недоступна спонсорка, весь дополнительный контент есть на Boosty ➜ boosty.to/xpuct
Блин оставлял сложный комент с вопросом и кодом. Вижу уведомление о том что ты ответил, а коментария под видио не вижу... Либо из-за того, что я его много раз правил и комент ушел в бан или хз...
@@XpucT @XpucT Здравствуйте, уважаемый XpucT! Очень нравиться Ваш конент. Я считаю, что только Вы разбираетесь в системе и в программирование. А программа, взрыв мозга. Только я потерял активацию, после инцидента с bios. Можно связаться по этому поводу? Раньше у Вас не было сайта, такого крутого. P.s. А по поводу моего вопроса - на втором Вашем канале, есть плейлист по "windows". Сняли 12 частей. Будете продолжать эту тему? Мне всегда, нравится как Вы объясняете. Про антивируы, про portable, про малоизвестные программы. Про то, что не стоит качать какие то сборки, только оф версию и самому шаг за шагом самостоятельно настраивать. Удивило, что у Вас системный диск, так мало весит. Я не мог написать на сайте. Хоть сейчас смогу попросить - выложите в открытом доступе, Ваш персональный образ Windows 10! Чтобы люди могли почувствовать руку мастера (хотя я считаю бога) по правильной настройке системы. С уважением, Михаил Сергеевич!
@@Black_and_White_BEAR спасибо за развёрнутый вопрос =) Видео на канале JailbreakVideo, само собой, также в планах, но темы набираются медленнее, т.к. почти всё свободное время уходит на изучение того, что можно исправить в Windows и сразу же само собой добавляю это в Win 10 Tweaker. Так или иначе, темы есть и продолжение видео на том канале будут. Касаемо активации - задайте вопрос на форуме, чтобы Я смог найти Вас по e-mail или по истории. Не понял, почему не можете зайти на сайт. И насчёт сборок. Я выбрал программирование и развитие программы как раз потому, чтобы у каждого человека был выбор. Я не хочу за человека решать иметь ему принтер или нет. Ибо будь Моя воля принтеров вообще бы домашних не было. Но это Я. Отдельный взгляд. А делать полу под себя, полу под кого-то... Нет. Это не наш путь. Наш путь Win 10 Tweaker, где каждый выбирает, что ему нужно. И если долго настраивать, может сохранить бэкап настроек и вуаля, круче любой сборки.
Большое спасибо лайфхак, раньше использовал таймер, и без амплитуды, но это горздо красивее и в тоже время проще Хотелось бы узнать ещё лайфхак, как реализовать многостраничность на одной форме )))
Несколько типов анимаций:
//простая линейная анимация - без замедления, без ускорения
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
@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
С остановкой событий. чтобы не лагало :)
{
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
Никто не рассказывает более смешно про перемещающиеся квадратики! 😄😄😄😄
Балдёж. Каждую ночь ролик, как раз делать нечего, вот пополняю знания
Иди модули для тг юзербота пилить, делать говорит ему нечего))
@@zarevo25 дай идей тогда xd
@@Dnlk-mi6pf цензор на свои сообщения уже делали? Вроде не особо сложно звучит, а вроде была бы полезная штука
я: - когда уже новые уроки по C#
Христ через полгода : - ИИИИ бац бац бац бац бац бац бац бац
я: - а теперь я не успеваю за ним)))
Спасибо большое за уроки!)))) очень помогают
Ну ты зачастил.Радуешь)
Ох, не перестаёте удивлять! Только что по этой простой формуле нашёл решение одной своей старой задачи связаной с обвесами персонажа. Она вообще на 3д движке и на другом языке, но конечно же всё сработало!)) Ещё раз огромное спасибо!!!
В програмировании нужна больше логика, чем математика. Я, например, не увидел ничего сложно, никакие логарифмы, интегралы и прочую шелуху. А visual studio, судя по всему, прошла магистратуру, аспирантуру и Эйс Вентуру🤣
Извини, но ты написал бред. Все зависит от направления деятельности. Если пишешь какое-то CRUD приложение или системную утилиту, да, математика не нужна. Но если ты вылезешь за пределы таких простеньких приложений и взглянешь на программы для анализа, графические программы, 3D движки и прочее, то там главенствует математика, особенно если тебе надо написать что-то с нуля, а не воспользоваться готовой библиотекой. Так вот, настоящий программист и отличается от обычного кодера (и хорошо если не говнокодера) тем, что он может писать любой тип программ, а не только простейшую программульку из 3х форм с кнопками и полями ввода. Так что на самом деле, если хочешь именоваться именно программистом, придется окунуться в математику. Как минимум, понадобится что-то понимать в линейной алгебре.
Благодаря тебе, я до сих пор ценен на рынке труда как программист) никого не слушай и не учи математику, это все зло))
Хачатур,слов нет! Одни эмоции,спасибо за знание!!! Удачи Вам!!!
Только зашел посмотреть не вышло ли чего нового.
И тут батц приходит уведомление о новом видео и тут я понял что удачно зашел :)
6:13 кнопка повтора, это гениально))
Приветствую вас граждане товарищи, ХрисТ это Джон Скит в наших интернетах, сложное не упрощая доносит до понимания просто и легко. ХрисТ может пора и свою книгу выпустить в свет?
Была бы цель, а методы реализации найдутся! пальчик жать не забываю ;)
Всем привет!
Теперь интересно как нарисовать такую привьюху в люстре. По всем фронтам подтягиваете нас и математика и анимация)
Урок интересный и неожиданно он мне пригодился в написании игры, а-ля 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
Конец
@XpucT а ты можешь по WinUI 3 снять такие же отличные видосы?
Абалдеть! Ну это ж просто булочка!!! :)
Топовые хаки для повседневной разработки, лайк)
10:40 Ну стоит сказать, что это не магия си шарпа, а магия в принципе любого языка - стандартное логическое отрицание. Единственное, что в некоторых древних языках надо написать побольше символов - not вместо !.
Можете пожалуйста в следующем видео ответить на вопрос:wpf: я хочу в textblock генерировать рандомный текст, точнее в Run. Там будет бегать просто рандомный текст. Пробовал string animation, но value указывается один раз, поэтому создал dispatcher timer и через 30 мс меняет текст в run на рандомный (одинаковой длины). Что посоветуете?
Хачатур, большое тебе спасибо за уроки!
Подскажи, сколько лет ты программируешь?
4 года.
это даже не самая занудная математика которая мне встречалась в принципе 😁
Красота 👍👍👍
Большое спасибо!)
Подача материала как всегда на высоте !!!
Здравствуй, пожалуйста, сделай урок про создание/загрузку XML файла, ищу в интернете, не могу найти понятных инструкций!
Там обычно ракетостроение предлагают, сам сталкивался
Спасибо за видео!
Срочно нужно пройти курс по улучшению логического мышления :))))
Можно ли создать форму, где будут кнопки для отключения служб(Wifi, звук)?
Можно. Я не против 👍
Спасибо! А Win10Tweaker это winforms или wpf?
Windows Forms
@XpucT поискал инфу в ютубе и нет видео на русском языке, начало работы, расширение для vs конструктор так сказать. Хоть и есть от майкрософт приложение галерея, кнопки вставить и что то еще не проблема, теми кусками кода, что прилагается. Например форму стандартную отключить и самому управление окном сделать. Ну в общем в таком духе, было бы очень классно из твоих уст. Или вовсе MAUI. Разрабатываешь на этом?
Здравствуйте, подскажите пожалуйста, как оформить спонсорку, хочу Вас поддержать за материал, к тому же, вроде как есть еще крутые материалы для спонсоров?
Приветствую 🖐
На данный момент спонсорка недоступна только тем, кто из России, т.к. TH-cam это ограничил.
Но ситуация временная. Я сам из России и просто ждём 👏
@@XpucT жаль конечно , но в любом случае ещё раз спасибо за Ваш труд)
Здравствуйте для начинающих программирования c# windows forms какой книги рекомендуете заранее спасибо.
Добрый день.
1. Герберт Шилдт C# 4.0
ijevanlib.ysu.am/wp-content/uploads/2017/12/C-4.0-полное-руководство-Герберт-Шилдт_2011.pdf
2. Лучшие Уроки C#
th-cam.com/play/PL05SB3rBbUsraqiEUeS70RKhVAu97nGeb.html
Спасибо, то что надо.
Хачатур благодаря твоим стараниям я многому добилась в программировании. Хотелось посмотреть как работать с API как создать свой. Как подключить к существующей API на WinForms
Христ привет помню ты делал видео про драгндроп с переносом файлов, вопрос можно ли из формы вытащить файл как из папки держа файл мышкой?
Привет 🖐
Интересный вопрос =)
Ни разу не сталкивался. Надо будет попробовать.
Доброго времени суток)
Небольшой вопрос не связанный с темой ролика, как ты относишься к небольшому редизайну W10T?
Есть ли смысл попытаться придумать небольшой редизайн и есть ли вообще возможность того что ты его будешь делать?
Все хорошо, но как это выглядит на wpf?
Здравствуйте. А как можно сделать анимацию сортировки одномерного массива пузырьковым методом?
@@XpucT поможете?🙏
Хачатур покажи как вывести видео файлы (несколько) в WinForms, которые будут выбраны через OpenFileDialog или методом перетаскивания. Чтоб они показывались в WinForms как в обычной папке.
эх были бы у винформ нормальные тени для контролов можно было бы вообще не обращать внимание на wpf и xaml
Добрый день. Помогите пожалуйста с поворотом объекта. Что нужно написать чтобы мой pictureBox1 плавно вращался по часовой стрелке.
Image img = pictureBox1.Image;
img.RotateFlip(RotateFlipType.Rotate90FlipNone);
pictureBox1.Image = img;
ВЕРНУЛСЯ!!1
Спасибо за урок! 😀
Получил эстетическое удовольствие от анимации. Прям стыдно
Полезный урок !👍 Спасибо ! , Но нашелся кто то у кого по математике была 2(ка) и он поставил 👎
Спасибо)
И тут я узнал, что в C# оказывается тоже есть стрелочные функции. Ну и ну... А элементы функционального программирования там есть интересно? А что ещё? Как можно делать анимацию если у вас нет таймлайна?! Представьте себе что у вас множественные разнообразные движения. Хотя что там представлять откройте Adobe After Effect там всё есть... Но они должны быть синхронизированы. Для этого надо единое время... Ой..
В цыкле while при помощи оператора new создаешь новый екземпляр класса Point. Может лучше екземпляр данного класса создать один раз при запуске программы (тоесть за пределамы цыкла), а в цыкле while просто менять параметры созданного екземпляра? Или вызуалке пофиг на ето?
В данном случае роли нет.
Сделай видео про сокеты!
Спасибо за урок! Подскажи, а что за тема у тебя в vs19?
Это не просто тема, это полностью авторская переработка всего интерфейса Visual Studio, над которой Я работал 3 месяца. Тут не просто красиво, а полезно для глаз, подробнее об этом Я рассказывал в видео для спонсоров:
th-cam.com/users/XpucTcommunity
Тема, доп.материалы и эксклюзив становится доступным сразу, как становишься спонсором канала.
@@XpucT Хорошо, спасибо. Скажи, там есть видео урок по созданию хотя бы похожей темы? Или ты рассказывал просто плюсы своей темы?
@@ЕвгенийКривоносов-о1ъ Да и Да.
интересно, а можно ли в WF сделать закругленные края самой формы или WPF мне за шиворот?
Можно.
В плейлисте про это есть ➜ WinAPI th-cam.com/play/PL05SB3rBbUsraqiEUeS70RKhVAu97nGeb.html
@@XpucT большущее спасибо))))))
Привет Хачатур! Спасибо вам за крутие видео уроки, очень ценные.
Сделал панели как в вашем видео уроке, все отлично работает.
Но мне надо как то закрепить панель, которая наезжает на вторую.
Сделал два чекбокса. Если нажать на первый чекбокс то панель наезжает на вторую и она должна оставаться там даже, а если нажать на второй чекбокс то функция туда-обратно опять бы работало.
Но мне не получается это сделать. Пробовал таймер старт, стоп не помогает.
Как можно решить эту задачу? Помогите пожалуйста.
Привет 🖐
Так ведь точно также, как и с expectation, добавляешь bool и ориентируешься на него.
while (!freeze && !expectation....)
То есть если галочка стоит, то переменной freeze делаешь true и никуда ничего не тронется.
Снял галочку freeze, стало false и попадёт в while.
@@XpucT Огромное вам спасибо за помощь. Теперь все работает отлично. 🙂
У меня в Visual studio была ошибка Ошибка при генерации кода "cursor', Произошла следущая ошибка: "Корневой узел ссылок недоступен" Прошу помогите
Добрый вечер, подскажите пожалуйста начинающему программисту как сделать такой момент, на форму кидаю панель, на панель забросил pictureBox, вопрос как сделать масштабирование pictureBox так что бы картинка в pictureBox была увеличена как в Painte, но при выделении области и её сохранении, сохранённый фрагмент картинки был не увеличенного масштаба а абсолютного как на экране? 3 дня сижу ну ни как, уже и в инете и интеллект суперский спрашивал, толку мало, pictureBox увеличивается как надо, применяю к нему интерполяцию, всё работает так как мне надо, но при сохранении фрагмент сохраняется увеличенный. Спасибо за ранее за помощь.
Круто!
Ого, а что такое обфускация?
ru.wikipedia.org/wiki/Обфускация_(программное_обеспечение)
Здравствуйте, я сделал как вы говорили , но не могу понять. У меня наблюдается один бесящий баг.
У меня на форме меню из 4х кнопок с одинаковой анимацией(та что с амплитудой) и когда проводишь по ней мышью она увеличивает размер кнопки , но тут и баг , иногда когда ты проводишь мышью (быстро) она останавливается и парой даже глючит. Помогите пожалуйста😅
Вот в таких моментах очень сильно прокачивается мозг.
Нужно понять, что именно способствовало тому, чтобы во время одного сценария проскочил другой и предотвратить его с помощью ещё одного bool в ещё одном if.
Занимайтесь 👍
Ничто так не развивает интеллект, как решение нестандартной задачи.
Как разложить сложное на простое. Как в быстром увидеть медленное.
@@XpucT у меня он настолько прокачался, что у меня голова теперь болит XD. Я какие только методы не пробовал
@@XpucT я пытался кстати с bool и if
Пытался построить такую структуру
If( ThisActive = true ){ MouseEnter () }
...
MouseEnter(){Анимация ... ThisActive = False} , но понял что я не могу вернуть true , просто не откуда возвращать. Пошёл и нашёл такой способ MouseMove , М-да, так себе способ , но он получился , но теперь проблема в скорости анимации и вот её нельзя изменить XD
Из одной проблемы возникает другая
@@XpucT но кстати, очень оригинальный ответ. И в принципе он помог ;)
Здравствуйте, никто не может подсказать, какое название у данной темы оформления Visual Studio?
Добрый день.
Это Моя авторская тема. Доступна на Boosty.
Вопрос не по теме, у кого-нибудь ещё кроме меня есть баг на windows 11 с плавными окнами?
У всех. На любых видеокартах и драйверах.
@@XpucT понятненько, спасибо!
А можно ли как то на win forms сделать подобие acrylic window как на wpf?
Можно. Вот один из рабочих вариантов:
stackoverflow.com/questions/56481230/how-to-create-windows-10-acrylic-transparency-effect-in-winform-c-sharp
Годнооооо))
Превью би лайк: ААААаААаААААааАаа
Что за тема для VS ??
Это не просто тема, это полностью авторская переработка всего интерфейса Visual Studio, над которой Я работал 3 месяца. Тут не просто красиво, а полезно для глаз, подробнее об этом Я рассказывал в видео для спонсоров:
th-cam.com/users/XpucTcommunity
Тема, доп.материалы и эксклюзив становится доступным сразу, как становишься спонсором канала.
Если недоступна спонсорка, весь дополнительный контент есть на Boosty ➜ boosty.to/xpuct
Блин оставлял сложный комент с вопросом и кодом. Вижу уведомление о том что ты ответил, а коментария под видио не вижу... Либо из-за того, что я его много раз правил и комент ушел в бан или хз...
Возможно, ссылка была в комменте ┐('~`;)┌
А можно, по поводу Windows 10 настроек?
Что можно по поводу Windows 10 настроек?
Постарайтесь задать вопрос понятно 👍
@@XpucT @XpucT Здравствуйте, уважаемый XpucT! Очень нравиться Ваш конент. Я считаю, что только Вы разбираетесь в системе и в программирование. А программа, взрыв мозга. Только я потерял активацию, после инцидента с bios. Можно связаться по этому поводу? Раньше у Вас не было сайта, такого крутого.
P.s.
А по поводу моего вопроса - на втором Вашем канале, есть плейлист по "windows". Сняли 12 частей. Будете продолжать эту тему? Мне всегда, нравится как Вы объясняете. Про антивируы, про portable, про малоизвестные программы. Про то, что не стоит качать какие то сборки, только оф версию и самому шаг за шагом самостоятельно настраивать.
Удивило, что у Вас системный диск, так мало весит.
Я не мог написать на сайте. Хоть сейчас смогу попросить - выложите в открытом доступе, Ваш персональный образ Windows 10! Чтобы люди могли почувствовать руку мастера (хотя я считаю бога) по правильной настройке системы.
С уважением, Михаил Сергеевич!
@@Black_and_White_BEAR спасибо за развёрнутый вопрос =)
Видео на канале JailbreakVideo, само собой, также в планах, но темы набираются медленнее, т.к. почти всё свободное время уходит на изучение того, что можно исправить в Windows и сразу же само собой добавляю это в Win 10 Tweaker. Так или иначе, темы есть и продолжение видео на том канале будут.
Касаемо активации - задайте вопрос на форуме, чтобы Я смог найти Вас по e-mail или по истории. Не понял, почему не можете зайти на сайт.
И насчёт сборок. Я выбрал программирование и развитие программы как раз потому, чтобы у каждого человека был выбор. Я не хочу за человека решать иметь ему принтер или нет. Ибо будь Моя воля принтеров вообще бы домашних не было. Но это Я. Отдельный взгляд. А делать полу под себя, полу под кого-то... Нет. Это не наш путь. Наш путь Win 10 Tweaker, где каждый выбирает, что ему нужно. И если долго настраивать, может сохранить бэкап настроек и вуаля, круче любой сборки.
Найс
Большое спасибо лайфхак, раньше использовал таймер, и без амплитуды, но это горздо красивее и в тоже время проще
Хотелось бы узнать ещё лайфхак, как реализовать многостраничность на одной форме )))
При помощи юзер контролов, например:
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();
}
это издевательство я тут WPF грызу и тут бац 🥺