Образования и науки российской федерации


Form1  Text Анимация формы  Button1



Pdf көрінісі
бет28/56
Дата13.03.2023
өлшемі0.74 Mb.
#470699
1   ...   24   25   26   27   28   29   30   31   ...   56
Form1 
Text
Анимация формы 
Button1 
Name
btnAW_BLEND 
Location
30; 62 
Size
232; 23 
Text
Проявление 
Button2 
Name
btnHOR_AW_SLIDE 
Location
30; 118 
Size
232; 23 
Text
Горизонтальное появление 
Button3 
Name
btnCenter_AW_SLIDE 
Location
30; 182 
Size
232; 23 
Text
Появление из центра 
3. Добавьте класс WinAPIClass: 
using System; 
using System.Runtime.InteropServices; 
using System.Windows.Forms; 
namespace AnimatedWindow 

public class WinAPIClass 

#region Анимация окна 


38 
///  
/// Тип анимации окна. Перечисление возвращает тип int 
/// после приведения. Каждому элементу присвоено 
/// свое значение типа int. 
/// 
 
[Flags] 
public enum AnimateWindowFlags:int 

AW_HOR_POSITIVE = 1, 
AW_HOR_NEGATIVE = 2, 
AW_VER_POSITIVE = 4, 
AW_VER_NEGATIVE = 8, 
AW_CENTER = 16, 
AW_HIDE = 65536, 
AW_ACTIVATE = 131072, 
AW_SLIDE = 262144, 
AW_BLEND = 524288 
}; 
///  
/// Анимация окна. 
/// 
 
/// 
Окно.
/// 
Время.
/// 
Тип анимации. Если в
/// неуправляемом коде используется перечисление, то его
/// нужно конвертировать в тип данных int. 
///  
[DllImportAttribute("user32.dll",EntryPoint="AnimateWindow",Set
LastError=true)] 
public static extern bool AnimateWindow(IntPtr hwnd,int 
dwTime,int dwFlags); 
///  
/// Анимация окна. 
/// 
 
/// 
Окно.
/// 
Время.
/// 
Флаги.
///  
public static bool AnimateWindow(Control ctrl,int dwTime, 
AnimateWindowFlags Flags) 

return AnimateWindow(ctrl.Handle,dwTime,(int)Flags); 

#endregion 


4. Создайте обработчики кнопок: 
private void btnAW_BLEND_Click(object sender, 
System.EventArgs e) 

// Скрываем окно 
this.Hide(); 
// Запускаем анимацию.
// Второй параметр в скобках — время анимации в
// миллисекундах. 


39 
WinAPIClass.AnimateWindow(this, 3000, 
WinAPIClass.AnimateWindowFlags.AW_ACTIVATE| 
WinAPIClass.AnimateWindowFlags.AW_BLEND); 
// Отображаем кнопки после анимации 
this.btnAW_BLEND.Invalidate(); 
this.btnHOR_AW_SLIDE.Invalidate(); 
this.btnCenter_AW_SLIDE.Invalidate(); 

private void btnHOR_AW_SLIDE_Click(object sender, 
System.EventArgs e) 

this.Hide(); 
WinAPIClass.AnimateWindow(this, 3000, 
WinAPIClass.AnimateWindowFlags.AW_HOR_POSITIVE| 
WinAPIClass.AnimateWindowFlags.AW_SLIDE); 
this.btnAW_BLEND.Invalidate(); 
this.btnHOR_AW_SLIDE.Invalidate(); 
this.btnCenter_AW_SLIDE.Invalidate(); 

private void btnCenter_AW_SLIDE_Click(object sender, 
System.EventArgs e) 

this.Hide(); 
WinAPIClass.AnimateWindow(this, 3000, 
WinAPIClass.AnimateWindowFlags.AW_CENTER| 
WinAPIClass.AnimateWindowFlags.AW_SLIDE); 
this.btnAW_BLEND.Invalidate(); 
this.btnHOR_AW_SLIDE.Invalidate(); 
this.btnCenter_AW_SLIDE.Invalidate(); 

5. Постройте и запустите приложение. Протестируйте три вида 
анимации. 
Лабораторная работа 6. Организация печати в формах windows 
Цель работы 
Изучение классов, реализующих задачу программирования печати и 
получение навыков по работе в программе с диалоговыми окнами. 
Упражнение 1. Использование диалоговых окон для печати 
При печати различных документов пользователям часто приходится 
изменять параметры печати. Обычно они ограничиваются заданием таких 
параметров, как ориентация страницы, ширина полей и размер бумаги.
.NET 
Framework 
содержит 
классы, 
которые 
предоставляют 
пользователям возможность осуществлять и более сложные настройки. 
В ходе выполнения данного упражнения будет создано простое 
приложение, 
дающее 
пользователю 
возможность 
использовать 


Достарыңызбен бөлісу:
1   ...   24   25   26   27   28   29   30   31   ...   56




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет