Delphiのすべてのオブジェクトは、オブジェクトの位置とサイズを制御するために、上、左、高さ、幅の4つの属性を提供します。
アーク⒗カーテン
カーテンの説教は、ゆっくりと画面を中央から両側に表示します。ここでは、dbimage1のセンタープロパティをtrueに設定します。幅プロパティを0に設定し、左の値を適切に設定して、画面の中央に表示します。アニメーションを実装する主な方法は、左属性(値が徐々に小さくなる)を変更し、幅は徐々に大きくなる必要があります。幅の変更値は、左の変更値でなければなりません。 Dimeer1のオンタイムイベントに次のステートメントを入力してください。
if(dbimage1.left> 0)then
始める
dbimage1.left:= dbimage1.left-1;
dbimage1.width:= dbimage1.width+2;
// dbimage1.widthの変更値は、dbimage1.leftの変更値の2倍である必要があります
終わり
それ以外
Timer1.Enabled:= false; // Endを取ります。
上記のプログラムの残りを上部と幅に変更して高さに変更して、垂直カーテンを引っ張ります。カーテンを引っ張る効果がテキストタイプのオブジェクトに適用される場合、画像は非常に良いです。
、アコーディオン
アイシジンのアニメーションでは、画面全体が表示されると、画面がゆっくりと両側から中央にブロックされ、アコーディオンを演奏するようにサイクリングし続けます。実装するときは、現時点で状態を示すために可変状態を追加する必要があります。特定の手順は次のとおりです。
手順tform1.timer1timer(sender:tobject);
始める
状態= 1の場合
if(dbimage1.left> 0)then
始める
dbimage1.left:= dbimage1.left-1
dbimage1.width:= dbimage1.width+2
終わり
それ以外
//画面が完全に開かれたら、状態変数を変更します
状態:= 2
else //両側から中央に引っ張ります
dbimage1.left <form1.width div 2の場合
始める
dbimage1.left:= dbimage1.left+1;
dbimage1.width:= dbimage1.width-2;
終わり
それ以外
//画面が閉じるとき、状態変数を変更します
状態:= 1;
終わり;
、フェンスタイプ
表面は最初は垂直フェンスでブロックされ、次にフェンスが徐々に狭くなり、フェンスで分割された画像が徐々に完成します。このアニメーションでは、フェンスの役割はstatictextタイプのオブジェクトとして機能します(画面にはいくつかのフェンスが表示され、いくつかのstatictextオブジェクトが必要です)。 statictextタイプオブジェクトの左と幅のプロパティを変更するだけです(左に大きくなり、幅が徐々に小さくなります。
st1.width> 0の場合、// st1はタイプのstactictextのオブジェクトです
始める
st1.width:= st1.width-2;
st1.left:= st1.left+1;
終わり
それ以外
//もう一度実行します
始める
st1.width:= 40; //左は実際の状況によって決定されます
st1.Left:= 40;
終わり;
フェンスを水平方向に配置し、左に変更し、幅を高くします。
g⒎ページ
遷移を再開する効果は、実際に最高値を修正し、高さ値を変更し、ストレッチ値をTRUEに設定することです。 TIMER1のオンタイムイベントで次のプログラムを入力して、ページを上げてください。
dbimage1.height> 0の場合
dbimage1.height:= dbimage1.height-4
Yanxiaping機械の高さの属性値は、ページを下向きに回転させる効果が達成されるようにします。上部から左に、高さを幅に変更すると、ページを左右に回す効果が得られます。左と幅が同時に変更された場合、軸を通過する垂直線で垂直線を回転させることができます1は次のとおりです。
手順tform1.timer1timer(sender:tobject);
始める
state = 1の場合
それから
dbimage1.width> 0の場合
始める
//写真は徐々に小さくなります
dbimage1.left:= dbimage1.left+1;
dbimage1.width:= dbimage1.width-2;
//幅の変更値は、左の変更値の2倍でなければなりません
終わり
それ以外
状態:= 2
それ以外
dbimage1.width <250の場合
始める
dbimage1.left:= dbimage1.left-1;
dbimage1.width:= dbimage1.width+2;
終わり
それ以外
状態:= 1
終わり;
上記のプログラムから、これは写真を小さくし、徐々に大きくなることがわかります(状態= 1) 2つの状態が交互に表示されます。
spingは徐々に顔を横切って動きます(飛ぶ)
多くの場合、タイトルを画像全体に飛ばす効果が必要です。 このタイプのアニメーションを実装するには、タイトルのトップ(垂直方向に飛ぶ)または左属性(水平方向に飛行)を変更するだけです。
絵画で左から右に飛んでいるタイトルに気付いたら。最初に、フォーム1にグラフィックオブジェクトdbimage1とテキストオブジェクトstatictext1を作成し(テキストタイプオブジェクトを画像に表示できないことに注意してください)、位置とサイズを設定し、次にform1にtimeオブジェクトtime1を作成し、有効なプロパティを設定してtrueintervalを設定します10のプロパティ。
手順tform1.timer1timer(sender:tobject);
statictext1.left <dbimage1.width+dbimage1.left thenの場合
statictext1..left:= statictext1.left+3
それ以外
statictext1.left:= dbimage1.left;
//タイトルが写真から飛び出したら、タイトルを写真の左に移動し、左から右に画面に入力します
終わり;
鳥を手に入れましょう
1.タイトルを左から右に1回だけ移動する場合は、ElseステートメントをTimer1.Enabledに変更します:= false;
2。値3はタイトルの動きの速度値であり、意志で変更できます。
3.タイトルが写真の特定の位置に移動された場合、「statictext1.Left <dbimage1.width+dbimage1.left」を「statictext1.left <位置値」に変更し、elseステートメントをtimer1.enabledに変更します:= = = =間違い;
4.左の値を大きくて小さく変更してから、右から左に飛ぶだけです。
5.左を上に、幅を高さに変更して、垂直アニメーションを実現します。