翻書的效果:FMX.TSwipeTransitionEffect Animation

This example shows how to use a TSwipeTransitionEffect transition and a TPathAnimation to simulate the turning of a book page.ui

1. To build and test this example, create a  HD FireMonkey Application - Delphi, then add the next objects to the form:
2. Load a bitmap to the  TImage and select the  Target and  Back bitmaps for the  TSwipeTransitionEffect.
3. Add the following code to the  OnClick event handlers of the image:

Code

procedure TForm1.Image1Click(Sender: TObject); begin PathAnimation1.Enabled := False; SelectionPoint1.Position.Point := PointF(0,0); SelectionPoint1.Opacity := 0; PathAnimation1.Parent := SelectionPoint1; PathAnimation1.Path.Clear; // begin Path for mouse pointer PathAnimation1.Path.MoveTo(PointF(0,0)); PathAnimation1.Path.LineTo(PointF(Form1.Width/2,Form1.Height/2)); PathAnimation1.Path.LineTo(PointF(Form1.Width*2,0)); // end PathAnimation1.Duration := 2; PathAnimation1.Start; end;
4. Add the following code to the  OnFinish and  OnProcess event handlers of the  TPathAnimation:

Code

procedure TForm1.PathAnimation1Finish(Sender: TObject); var BitMap : TBitmap; begin BitMap := TBitmap.Create(0,0); BitMap.Assign(SwipeTransitionEffect1.Target); SwipeTransitionEffect1.Target := Image1.Bitmap; Image1.Bitmap.Assign(BitMap); SwipeTransitionEffect1.MousePoint := PointF(0,0); end;   procedure TForm1.PathAnimation1Process(Sender: TObject); begin SwipeTransitionEffect1.MousePoint:=SelectionPoint1.Position.Point; end;

The image will swipe its bitmap on every mouse click. The next image shows the resulting animation:this

TSwipe Effect Animation.gif

http://docwiki.embarcadero.com/CodeExamples/XE6/en/FMX.TSwipeTransitionEffect_Animationspa

相關文章
相關標籤/搜索