Semua objek di Delphi menyediakan empat atribut: atas, kiri, tinggi, dan lebar untuk mengontrol posisi dan ukuran objek;
Arc ⒗ Tirai
Khotbah tirai perlahan menampilkan layar dari tengah ke kedua sisi. Di sini, atur properti tengah DBIMAGE1 ke True; Atur properti lebar ke 0 dan atur nilai kiri dengan tepat untuk membuatnya muncul di tengah layar. Metode utama untuk mengimplementasikan animasi adalah untuk memodifikasi atribut kiri (nilai secara bertahap menjadi lebih kecil) dan atribut lebar (nilai secara bertahap menjadi lebih besar). Perlu dicatat bahwa untuk menarik tirai secara merata dari tengah ke kedua sisi, Nilai perubahan lebar harus menjadi nilai perubahan kiri. Masukkan pernyataan berikut di acara Ontime Dimeer1:
if (dbimage1.left> 0) lalu
Mulai
DBImage1.LEFT: = DBIMAGE1.LEFT-1;
dbImage1.width: = dbimage1.width+2;
// Nilai perubahan dbimage1.width harus 2 kali nilai perubahan dbimage1.left
akhir
kalau tidak
timer1.enabled: = false; // ambil akhir.
Ubah kiri dalam program di atas ke atas dan lebar ke ketinggian untuk mencapai penarikan tirai vertikal. Jika efek menarik tirai diterapkan pada objek tipe teks, gambarnya sangat bagus.
,akordeon
Dalam animasi mata-mata, ketika seluruh layar ditampilkan, layar perlahan-lahan diblokir dari kedua sisi ke tengah, dan terus bersepeda, seperti bermain akordeon. Saat menerapkan, keadaan variabel perlu ditambahkan untuk menunjukkan keadaan saat ini. Prosedur spesifiknya adalah sebagai berikut:
Prosedur TFORM1.TIMER1TIMER (Pengirim: Tobject);
Mulai
Jika status = 1 lalu
if (dbimage1.left> 0) lalu
Mulai
DBImage1.LEFT: = DBIMAGE1.LEFT-1
DbImage1.width: = dbimage1.width+2
akhir
kalau tidak
// Saat layar benar -benar dibuka, ubah variabel status
Negara: = 2
lain // Tarik dari kedua sisi ke tengah
jika dbimage1.left <form1.width div 2
Mulai
DBImage1.LEFT: = DBIMAGE1.LEFT+1;
dbimage1.width: = dbimage1.width-2;
akhir
kalau tidak
// Saat layar ditutup, ubah variabel status
Negara: = 1;
akhir;
, tipe pagar
Permukaan awalnya diblokir oleh pagar vertikal, dan kemudian pagar secara bertahap mempersempit, dan gambar dibagi oleh pagar secara bertahap menjadi lengkap. Dalam animasi ini, peran pagar bertindak sebagai objek dari jenis statictext (layar menampilkan beberapa pagar dan membutuhkan beberapa objek statictext). Cukup ubah sifat kiri dan lebar dari objek tipe statictext (kiri secara bertahap menjadi lebih besar dan lebar secara bertahap menjadi lebih kecil). Pada peristiwa timer1, setiap objek Statictext diproses sebagai berikut:
Jika ST1.Width> 0 lalu // ST1 adalah objek tipe stactictext
Mulai
st1.width: = st1.width-2;
ST1.LEFT: = ST1.LEFT+1;
akhir
kalau tidak
// Jalankan lagi
Mulai
ST1.width: = 40; // Lebar dan kiri ditentukan oleh situasi aktual
ST1.LEFT: = 40;
akhir;
Atur pagar di atas secara horizontal, ubah kiri ke atas, dan lebar ke ketinggian, yang akan menjadi efek dari jendela seratus halaman.
Halaman g
Efek dari melanjutkan transisi sebenarnya adalah untuk memperbaiki nilai atas, mengubah nilai tinggi, dan mengatur nilai peregangan menjadi true. Ketik program berikut di acara Ontime Timer1 untuk mengubah halaman:
jika dbimage1.height> 0 lalu
DbImage1.height: = dbimage1.height-4
Nilai atribut ketinggian mesin yanxiaping berubah dari kecil ke besar, sehingga efek membalik halaman ke bawah tercapai. Jika Anda mengubah bagian atas ke kiri dan tinggi ke lebar, Anda akan mencapai efek dari belok halaman kiri dan kanan. Jika kiri dan lebar diubah pada saat yang sama, gambar dapat diputar dengan garis vertikal yang melewati gambar sebagai sumbu.
Prosedur TFORM1.TIMER1TIMER (Pengirim: Tobject);
Mulai
jika status = 1
Kemudian
jika dbimage1.width> 0 lalu
Mulai
// gambar secara bertahap menjadi lebih kecil
DBImage1.LEFT: = DBIMAGE1.LEFT+1;
dbimage1.width: = dbimage1.width-2;
// Nilai perubahan lebar harus dua kali nilai perubahan kiri
akhir
kalau tidak
Negara: = 2
kalau tidak
jika dbimage1.width <250 maka
Mulai
DBImage1.LEFT: = DBIMAGE1.LEFT-1;
dbImage1.width: = dbimage1.width+2;
akhir
kalau tidak
Negara: = 1
akhir;
Dari program di atas, kita dapat melihat bahwa ini adalah untuk membuat gambar lebih kecil dan kemudian secara bertahap tumbuh lebih besar Dua negara muncul secara bergantian.
⒋ping secara bertahap bergerak (terbang) di wajah
Efek membiarkan judul terbang melintasi gambar sering diperlukan. Untuk mengimplementasikan jenis animasi ini, Anda hanya perlu mengubah bagian atas judul (terbang secara vertikal) atau atribut kiri (terbang secara horizontal).
Jika Anda menyadari judul yang terbang dari kiri ke kanan di atas lukisan. Pertama -tama buat objek grafis dbimage1 dan objek teks statictext1 di form1 (perhatikan bahwa objek tipe teks tidak dapat ditampilkan pada gambar), atur posisi dan ukuran, dan kemudian buat objek waktu waktu1 di form1, atur properti yang diaktifkan untuk mengatur trueInterval properti ke 10;
Prosedur TFORM1.TIMER1TIMER (Pengirim: Tobject);
Jika statictext1.left <dbimage1.width+dbimage1.left kemudian
statictext1..Left: = statictext1.left+3
kalau tidak
statictext1.left: = dbimage1.left;
// Saat judul terbang keluar dari gambar, buat judul pindah ke kiri gambar, dan masukkan layar dari kiri ke kanan lagi
akhir;
Dapatkan burung
1. Jika Anda ingin memindahkan judul dari kiri ke kanan hanya sekali, ubah pernyataan yang lain ke timer1.enabled: = false;
2. Nilai 3 adalah nilai kecepatan gerakan judul dan dapat diubah sesuka hati;
3. Jika judul dipindahkan ke posisi tertentu dalam gambar, ubah "statictext1.left <dbimage1.width+dbimage1.left" menjadi "statictext1.left <nilai posisi", dan ubah pernyataan lain ke timer1.enabled: = PALSU;
4. Ubah saja nilai kiri dari besar ke kecil, lalu terbang dari kanan ke kiri;
5. Ubah kiri di atas ke atas dan lebar ke ketinggian untuk mencapai animasi vertikal.