AppBar + (ДЗ по анимации)
Цитата: Удаленный пользователь от 24.07.2021, 01:48Всем привет!
Накидал небольшой AppBar с нелинейной анимацией, который берёт список приложений из файла.
[spoiler title="Скрины"]
[/spoiler]
[spoiler title="Видео"][/spoiler]
Скачать
Всем привет!
Накидал небольшой AppBar с нелинейной анимацией, который берёт список приложений из файла.


Скачать
Цитата: admin от 24.07.2021, 01:58Привет 🖐
[spoiler title="Твоё домашнее задание:"]// Координаты нажатия мыши Point MouseDownLocation; // Событиые на удерживание ЛКМ на PictureBox void pictureBox1_MouseDown(object sender, MouseEventArgs e) { // Если нажал ЛКМ if (e.Button == MouseButtons.Left) { // Записать координаты в переменную MouseDownLocation = e.Location; } } // Событиые на движение мыши, пока прожата ЛКМ void pictureBox1_MouseMove(object sender, MouseEventArgs e) { // Если нажал ЛКМ if (e.Button == MouseButtons.Left) { // Назначить координаты PictureBox в соответствии с тем, где катается мышь pictureBox1.Left = e.X + pictureBox1.Left - MouseDownLocation.X; pictureBox1.Top = e.Y + pictureBox1.Top - MouseDownLocation.Y; // Если PictureBox уехал из зоны формы if (pictureBox1.Location.Y > Height) { // Удаляешь объект } } }[/spoiler]
Привет 🖐
// Координаты нажатия мыши
Point MouseDownLocation;
// Событиые на удерживание ЛКМ на PictureBox
void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
// Если нажал ЛКМ
if (e.Button == MouseButtons.Left)
{
// Записать координаты в переменную
MouseDownLocation = e.Location;
}
}
// Событиые на движение мыши, пока прожата ЛКМ
void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
// Если нажал ЛКМ
if (e.Button == MouseButtons.Left)
{
// Назначить координаты PictureBox в соответствии с тем, где катается мышь
pictureBox1.Left = e.X + pictureBox1.Left - MouseDownLocation.X;
pictureBox1.Top = e.Y + pictureBox1.Top - MouseDownLocation.Y;
// Если PictureBox уехал из зоны формы
if (pictureBox1.Location.Y > Height)
{
// Удаляешь объект
}
}
}
Цитата: Удаленный пользователь от 24.07.2021, 02:44Добрый🖐.
Прикольная штука, мне нравится), осталась доработать, у меня почему-то анимация кривая+ еще немного багов, и не помешало бы еще чтоб и папку можно было бы засунуть туда, + кнопку закрыть добавить. Еще иконка приложений не красивая получается, так как размер иконки при перемещении в appbar большая и расплывается.
Добрый🖐.
Прикольная штука, мне нравится), осталась доработать, у меня почему-то анимация кривая+ еще немного багов, и не помешало бы еще чтоб и папку можно было бы засунуть туда, + кнопку закрыть добавить. Еще иконка приложений не красивая получается, так как размер иконки при перемещении в appbar большая и расплывается.
Цитата: Удаленный пользователь от 24.07.2021, 05:21Привет 👋
Думаю нужно добавить проверку на запущенную копию программы.
Если юзер запустить повторно программу то появится MessageBox окно с вопросом? Перезапустить программу?
Это будет логичнее, так как пользователь зачем-то запускает повторно Appbar, значит ему нужно её перезапустить, это скорее всего)Панель с таки размером можно оставить, но саму область иконки программы можно уменьшить 😉
Привет 👋
Думаю нужно добавить проверку на запущенную копию программы.
Если юзер запустить повторно программу то появится MessageBox окно с вопросом? Перезапустить программу?
Это будет логичнее, так как пользователь зачем-то запускает повторно Appbar, значит ему нужно её перезапустить, это скорее всего)
Панель с таки размером можно оставить, но саму область иконки программы можно уменьшить 😉
Цитата: Удаленный пользователь от 24.07.2021, 18:52Идея не плохая, мне нравиться, но лично у меня ошибка, может быть я как-нибудь не так запустил..
[spoiler title="Ошибка"]
Подробная информация об использовании оперативной
(JIT) отладки вместо данного диалогового
окна содержится в конце этого сообщения.************** Текст исключения **************
System.ComponentModel.Win32Exception (0x80004005): Не удается найти указанный файл
в TsudaKageyu.IconExtractor.Initialize(String fileName)
в AppBar.Form1.<Do>d__14.MoveNext()
--- Конец трассировка стека из предыдущего расположения, где возникло исключение ---
в System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()************** Загруженные сборки **************
mscorlib
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4400.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
new
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Users/xozip/AppData/Local/Temp/Rar$EXa3328.17670/AppBar.exe
----------------------------------------
System.Windows.Forms
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4400.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4360.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4395.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4341.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4395.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
mscorlib.resources
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
System.Windows.Forms.resources
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
Microsoft.CSharp
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4161.0
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.CSharp/v4.0_4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll
----------------------------------------************** Оперативная отладка (JIT) **************
Для подключения оперативной (JIT) отладки файл .config данного
приложения или компьютера (machine.config) должен иметь
значение jitDebugging, установленное в секции system.windows.forms.
Приложение также должно быть скомпилировано с включенной
отладкой.Например:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>При включенной отладке JIT любое необрабатываемое исключение
пересылается отладчику JIT, зарегистрированному на данном компьютере,
вместо того чтобы обрабатываться данным диалоговым окном.[/spoiler]
Идея не плохая, мне нравиться, но лично у меня ошибка, может быть я как-нибудь не так запустил..
Подробная информация об использовании оперативной
(JIT) отладки вместо данного диалогового
окна содержится в конце этого сообщения.
************** Текст исключения **************
System.ComponentModel.Win32Exception (0x80004005): Не удается найти указанный файл
в TsudaKageyu.IconExtractor.Initialize(String fileName)
в AppBar.Form1.<Do>d__14.MoveNext()
--- Конец трассировка стека из предыдущего расположения, где возникло исключение ---
в System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
************** Загруженные сборки **************
mscorlib
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4400.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
new
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Users/xozip/AppData/Local/Temp/Rar$EXa3328.17670/AppBar.exe
----------------------------------------
System.Windows.Forms
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4400.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4360.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4395.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4341.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4395.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
mscorlib.resources
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
System.Windows.Forms.resources
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
Microsoft.CSharp
Версия сборки: 4.0.0.0
Версия Win32: 4.8.4161.0
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.CSharp/v4.0_4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll
----------------------------------------
************** Оперативная отладка (JIT) **************
Для подключения оперативной (JIT) отладки файл .config данного
приложения или компьютера (machine.config) должен иметь
значение jitDebugging, установленное в секции system.windows.forms.
Приложение также должно быть скомпилировано с включенной
отладкой.
Например:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
При включенной отладке JIT любое необрабатываемое исключение
пересылается отладчику JIT, зарегистрированному на данном компьютере,
вместо того чтобы обрабатываться данным диалоговым окном.
Цитата: Удаленный пользователь от 24.07.2021, 19:01Добрый день!
Выглядит круто, хорошая идея. Согласен, что нужно реализовать вещи, описанные Pixl'ем.
Ещё круто было бы, если бы можно было менять положение этой панели снизу, сверху, справа, слева.
В идеале ещё переключение тёмной и светлой тем сделать и станет неотъемливой частью программ постоянного пользования 🙂
Добрый день!
Выглядит круто, хорошая идея. Согласен, что нужно реализовать вещи, описанные Pixl'ем.
Ещё круто было бы, если бы можно было менять положение этой панели снизу, сверху, справа, слева.
В идеале ещё переключение тёмной и светлой тем сделать и станет неотъемливой частью программ постоянного пользования 🙂
Цитата: Удаленный пользователь от 24.07.2021, 19:02Цитата: Pixi от 24.07.2021, 05:21Привет
Думаю нужно добавить проверку на запущенную копию программы.
Если юзер запустить повторно программу то появится MessageBox окно с вопросом? Перезапустить программу?
Это будет логичнее, так как пользователь зачем-то запускает повторно Appbar, значит ему нужно её перезапустить, это скорее всего)Панель с таки размером можно оставить, но саму область иконки программы можно уменьшить
День добрый.
Подскажите, пожалуйста что за иконка на архиве у вас, это какой-то архиватор или просто иконка? Если можно, поделитесь названием/файлом.
Цитата: Pixi от 24.07.2021, 05:21Привет
Думаю нужно добавить проверку на запущенную копию программы.
Если юзер запустить повторно программу то появится MessageBox окно с вопросом? Перезапустить программу?
Это будет логичнее, так как пользователь зачем-то запускает повторно Appbar, значит ему нужно её перезапустить, это скорее всего)Панель с таки размером можно оставить, но саму область иконки программы можно уменьшить
День добрый.
Подскажите, пожалуйста что за иконка на архиве у вас, это какой-то архиватор или просто иконка? Если можно, поделитесь названием/файлом.
Цитата: Удаленный пользователь от 25.07.2021, 02:14Доброй ночи!
Обновил..
Исправил:
- "Дрыгание" при кликах по открытому бару
- Паршивое качество иконок
- Отсутствие анимации при сворачивании, когда менее 4-х иконок в баре.Добавил:
- Возможность удалять и добавлять объекты без надобности копаться в Apps.ini
- Закрытие программы правым кликом
- Возможность добавить папку (пока что с "НО")
- Счётчик ошибок при запуске (Если программа не смогла запуститься 4 раза, то она закроется, с рекомендацией проверить файл Apps.ini.. ErrorCount = 1 норм.. 2 и более, не норм)
[spoiler title="Видео"][/spoiler]
Доброй ночи!
Обновил..
Исправил:
- "Дрыгание" при кликах по открытому бару
- Паршивое качество иконок
- Отсутствие анимации при сворачивании, когда менее 4-х иконок в баре.
Добавил:
- Возможность удалять и добавлять объекты без надобности копаться в Apps.ini
- Закрытие программы правым кликом
- Возможность добавить папку (пока что с "НО")
- Счётчик ошибок при запуске (Если программа не смогла запуститься 4 раза, то она закроется, с рекомендацией проверить файл Apps.ini.. ErrorCount = 1 норм.. 2 и более, не норм)
Цитата: Удаленный пользователь от 25.07.2021, 02:33Цитата: XpucT от 24.07.2021, 01:58Привет
[spoiler title="Твоё домашнее задание:"]Сразу всем привет!)
Сделал)Цитата: Mikhail от 24.07.2021, 02:44Добрый
.
Прикольная штука, мне нравится), осталась доработать, у меня почему-то анимация кривая+ еще немного багов, и не помешало бы еще чтоб и папку можно было бы засунуть туда, + кнопку закрыть добавить. Еще иконка приложений не красивая получается, так как размер иконки при перемещении в appbar большая и расплывается.Качество иконок поправил, анимацию тоже, папки прикрутил, но пока без опознавательных знаков, кнопка закрыть - ПКМ)
Цитата: Pixi от 24.07.2021, 05:21Думаю нужно добавить проверку на запущенную копию программы.
Панель с таки размером можно оставить, но саму область иконки программы можно уменьшить
Ищу способ это сделать, вроде задача плёвая, но пока не решил.
Иконки сделал меньше на несколько пикселейЦитата: Vladislav vaidee от 24.07.2021, 19:01Ещё круто было бы, если бы можно было менять положение этой панели снизу, сверху, справа, слева.
В идеале ещё переключение тёмной и светлой тем сделать и станет неотъемливой частью программ постоянного пользованияИ это буду изучать)
Цитата: Kiya229 от 24.07.2021, 18:52Идея не плохая, мне нравиться, но лично у меня ошибка, может быть я как-нибудь не так запустил..
Привет, проверь обновлённую версию.
Цитата: XpucT от 24.07.2021, 01:58Привет
Твоё домашнее задание:
Сразу всем привет!)
Сделал)
Цитата: Mikhail от 24.07.2021, 02:44Добрый
.
Прикольная штука, мне нравится), осталась доработать, у меня почему-то анимация кривая+ еще немного багов, и не помешало бы еще чтоб и папку можно было бы засунуть туда, + кнопку закрыть добавить. Еще иконка приложений не красивая получается, так как размер иконки при перемещении в appbar большая и расплывается.
Качество иконок поправил, анимацию тоже, папки прикрутил, но пока без опознавательных знаков, кнопка закрыть - ПКМ)
Цитата: Pixi от 24.07.2021, 05:21Думаю нужно добавить проверку на запущенную копию программы.
Панель с таки размером можно оставить, но саму область иконки программы можно уменьшить
Ищу способ это сделать, вроде задача плёвая, но пока не решил.
Иконки сделал меньше на несколько пикселей
Цитата: Vladislav vaidee от 24.07.2021, 19:01Ещё круто было бы, если бы можно было менять положение этой панели снизу, сверху, справа, слева.
В идеале ещё переключение тёмной и светлой тем сделать и станет неотъемливой частью программ постоянного пользования
И это буду изучать)
Цитата: Kiya229 от 24.07.2021, 18:52Идея не плохая, мне нравиться, но лично у меня ошибка, может быть я как-нибудь не так запустил..
Привет, проверь обновлённую версию.
Цитата: Удаленный пользователь от 25.07.2021, 02:43Привет.
Теперь все работает четко👍, надо бы еще убрать, чтоб app не был "поверх всех окон", мне по крайне мере неудобно.
Привет.
Теперь все работает четко👍, надо бы еще убрать, чтоб app не был "поверх всех окон", мне по крайне мере неудобно.