Silverlight学习笔记(1)-3.0放大缩小
2010-03-23 12:02
363 查看
Image.xaml
<canvas x:name="LayoutRoot">
<img x:name="imgLogo1" source="Image/logo1.jpg" canvas.top="60" canvas.left="100" canvas.zindex="1" mouseleave="imgLogo1_MouseLeave" mouseenter="imgLogo1_MouseEnter" cursor="Hand">
<image.rendertransform>
<scaletransform x:name="LogoScale" centery="96"centerx="90">
</scaletransform>
</image.rendertransform>
</img>
</canvas>
Image.xaml.cs
private System.Windows.Threading.DispatcherTimer timer;
private ScaleDirection scaleDirection ;
public Page()
{
InitializeComponent();
timer = new System.Windows.Threading.DispatcherTimer();
timer.Interval = TimeSpan.FromMilliseconds(50);
timer.Tick += new EventHandler(timer_Tick);
} void timer_Tick(object sender, EventArgs e)
{
AdjustScale(scaleDirection, LogoScale);
} void AdjustScale(ScaleDirection scaleDirection, ScaleTransform scale)
{
if (scaleDirection == ScaleDirection.Down)
{
if (scale.ScaleX < 1.3)
{
scale.ScaleX += 0.05; scale.ScaleY += 0.05;
}
else
timer.Stop();
}
else
{
if (scale.ScaleX > 1.0)
{
scale.ScaleX -= 0.05; scale.ScaleY -= 0.05;
}
else
timer.Stop();
}
} enum ScaleDirection
{
Up, Down
}
private void imgLogo1_MouseEnter(object sender, MouseEventArgs e)
{
scaleDirection = ScaleDirection.Down;
timer.Start();
} private void imgLogo1_MouseLeave(object sender, MouseEventArgs e)
{
scaleDirection = ScaleDirection.Up;
timer.Start();
}
<canvas x:name="LayoutRoot">
<img x:name="imgLogo1" source="Image/logo1.jpg" canvas.top="60" canvas.left="100" canvas.zindex="1" mouseleave="imgLogo1_MouseLeave" mouseenter="imgLogo1_MouseEnter" cursor="Hand">
<image.rendertransform>
<scaletransform x:name="LogoScale" centery="96"centerx="90">
</scaletransform>
</image.rendertransform>
</img>
</canvas>
Image.xaml.cs
private System.Windows.Threading.DispatcherTimer timer;
private ScaleDirection scaleDirection ;
public Page()
{
InitializeComponent();
timer = new System.Windows.Threading.DispatcherTimer();
timer.Interval = TimeSpan.FromMilliseconds(50);
timer.Tick += new EventHandler(timer_Tick);
} void timer_Tick(object sender, EventArgs e)
{
AdjustScale(scaleDirection, LogoScale);
} void AdjustScale(ScaleDirection scaleDirection, ScaleTransform scale)
{
if (scaleDirection == ScaleDirection.Down)
{
if (scale.ScaleX < 1.3)
{
scale.ScaleX += 0.05; scale.ScaleY += 0.05;
}
else
timer.Stop();
}
else
{
if (scale.ScaleX > 1.0)
{
scale.ScaleX -= 0.05; scale.ScaleY -= 0.05;
}
else
timer.Stop();
}
} enum ScaleDirection
{
Up, Down
}
private void imgLogo1_MouseEnter(object sender, MouseEventArgs e)
{
scaleDirection = ScaleDirection.Down;
timer.Start();
} private void imgLogo1_MouseLeave(object sender, MouseEventArgs e)
{
scaleDirection = ScaleDirection.Up;
timer.Start();
}
相关文章推荐
- Silverlight学习笔记五( 在Silverlight 2.0/3.0/4.0 中使用OpenFileDialog浏览本地图片)
- Python OpenCV学习笔记之:通过图像金字塔方式缩小放大图片
- Silverlight学习笔记:第一章:Silverlight3.0开发工具和开发实践
- 安卓学习笔记之:实现ImageView图片双击放大及缩小
- ios学习笔记之八--按钮控制图片放大缩小
- 学习Spring3.0的笔记(杂)
- SilverLight商业应用程序开发---学习笔记(11)常用数据输入控件介绍
- SilverLight商业应用程序开发---学习笔记(3)
- 【Cocos2d-x 3.0学习笔记】动作,动画
- WPF and Silverlight 学习笔记(八):WPF布局管理之Grid、UniformGrid
- SilverLight学习笔记--实际应用(一)(2):手把手建立一个Silverlight应用程序之添加记录
- 有关Data Input类组件的研究——Silverlight学习笔记[26]
- OPENCV学习笔记(一):安装OpenCV:OpenCV 3.0、OpenCV 2.4.8、OpenCV 2.4.9 +VS 开发环境配置
- WPF and Silverlight 学习笔记(十):WPF控件模型
- WPF and Silverlight 学习笔记(十一):WPF控件内容模型
- Spring3.0官网文档学习笔记(八)--3.4.3~3.4.6
- 有关TransitioningContentControl组件的研究——Silverlight学习笔记[28]
- 有关DockPanel组件的研究——Silverlight学习笔记[32]
- Webx3.0学习笔记(二):创建一个简单的Webx项目
- 一起学习ArcEngine(6)固定比例放大缩小