Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
25 / 28 / 19
Регистрация: 24.12.2014
Сообщений: 1,259
1

Как развернуть форму с анимацией?

05.11.2016, 23:37. Показов 1190. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Не получается развернуть форму с использованием анимации.
Вот класс:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class WinAPI
{
    [DllImport("user32", CharSet = CharSet.Auto)]
    public static extern int AnimateWindow(IntPtr hwnd, int dwTime, int dwFlags);
 
    public const int AW_HOR_POSITIVE = 1;
    public const int AW_HOR_NEGATIVE = 2;
    public const int AW_VER_POSITIVE = 4;
    public const int AW_VER_NEGATIVE = 8;
    public const int AW_HIDE = 65536;
    public const int AW_ACTIVATE = 131072;
    public const int AW_SLIDE = 262144;
    public const int AW_BLEND = 524288;
}
Скрываю форму так:
C#
1
2
 WinAPI.AnimateWindow(Handle, 500, WinAPI.AW_BLEND | WinAPI.AW_HIDE);
            this.WindowState = FormWindowState.Minimized;
А как развернуть её с таким же параметром типо:
C#
1
2
WinAPI.AnimateWindow(Handle, 500, WinAPI.AW_BLEND | WinAPI.AW_ACTIVATE);
            this.WindowState = FormWindowState.Normal;
(Попытался не получается )
Так же пробовал вставлять в свойства Form
1 - Resize
2 - Shown

Как быть?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.11.2016, 23:37
Ответы с готовыми решениями:

Как развернуть форму на весь экран
Подскажите пожалуйста - как программно максимизировать форму? Могу программно установить...

Как развернуть форму на весь экран
Как сделать так, чтобы при разворачивании окна на весь экран, элементы окна тоже разворачивались?...

Как свернуть или развернуть форму
Как свернуть или развернуть форму из программы? Не закрыть (Close()) или открыть (Show()), а...

Как закрыть одну форму, и развернуть другую
Ребята, не пойму почему после выбора radioButton, я хочу закрыть окно и открыть форму с окнами, но...

2
3654 / 2567 / 717
Регистрация: 02.08.2011
Сообщений: 6,928
06.11.2016, 01:49 2
Надо просто вызвать эту функцию с флагом AW_ACTIVATE.
Только вот она не очень то хорошо работает в Vista/7.
Note that this function does not work correctly on windows vista/7 with the aero theme enabled.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
private void Form1_Load(object sender, EventArgs e)
        {
            _timer.Interval = 2000;
            _timer.Tick += (o, ea) =>
            {
                if (_hidden)
                {
                    WinAPI.AnimateWindow(Handle, 500, WinAPI.AW_BLEND | WinAPI.AW_ACTIVATE);
 
                }
                else
                {
                    WinAPI.AnimateWindow(Handle, 500, WinAPI.AW_BLEND | WinAPI.AW_HIDE);
                }
                _hidden = !_hidden;
 
            };
            _timer.Start();
        }
1
25 / 28 / 19
Регистрация: 24.12.2014
Сообщений: 1,259
06.11.2016, 15:36  [ТС] 3
Ваш пример, он открывает и скрывает ( по таймеру) каждые 3 секунды)
А _hidden условие, я так полагаю:
C#
1
bool _hidden = true;
?

Добавлено через 2 минуты
Мне нужно просто развернуть форму из панели задач с анимацией) ( после того как свернул )
0
06.11.2016, 15:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.11.2016, 15:36
Помогаю со студенческими работами здесь

Развернуть форму обратно
Ребят , вот так я открываю форму с "игрой" пряча при этом форму меню . private void...

Развернуть форму на весь экран
Доброго времени суток всем, подскажите, как связать размер Form с размером экрана. Т.е. чтобы форма...

Развернуть форму из трея через SetForegroundWindow
В общем при запуске программы, она находит другой процесс Z по имени и вызывает его командой...

Если свернуть и развернуть форму, то рисунок начинает заново прорисовываться
Здравствуйте! Имеется проблема: есть компонент (panel, picturebox, не суть важно), в котором в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru