Karena Delphi mengadopsi pendekatan yang benar-benar berorientasi objek, kompiler tercepat di dunia saat ini, dan teknologi database terdepan, terutama kompatibilitas penuhnya dengan Windows API, dan kemampuan pembuatan kode otomatis yang sangat baik... orang telah melihatnya hanya dalam waktu singkat waktu Dalam beberapa tahun terakhir, Delphi menonjol di antara banyak alat pengembangan! Banyaknya kualitas luar biasa Delphi yang memungkinkan pemrogram mengembangkan perangkat lunak aplikasi tingkat profesional dalam waktu singkat, sambil melakukan sedikit pekerjaan!
Seperti kata pepatah, Mari kita menjadi lebih baik! Bagaimana kita memanfaatkan keunggulan Delphi untuk merancang program dengan lebih cepat?
1. Manfaatkan sepenuhnya berbagi kode lengkap (Jubang):
Tujuannya bukan sekedar untuk “malas”, tetapi juga sebagai cara untuk mengoptimalkan kode program. Tentunya hal pertama yang harus diperhatikan adalah apakah bisa dibagikan (ini sangat sederhana, lihat apakah termasuk dalam kumpulan drop-down acara), dan hal kedua yang perlu diperhatikan adalah apakah akan ada " masalah" setelah berbagi, karena kebenaran adalah langkah pertama. Pengoptimalan hanya perlu dilakukan jika sudah dijamin benar!
Misal: kita memberikan pesan konfirmasi sebelum pengguna menghapus data:
Prosedur TForm1.Table1BeforeDelete(DataSet: TDataSet);
mulai
//Konfirmasi penghapusan data
if MessageBox(handle,'Apakah Anda yakin ingin menghapus data saat ini?','Konfirmasi',MB_IconQuestion+MB_YesNo)=IDNO maka
Menggugurkan;
akhir;
Kemudian, selama Anda bersedia mengizinkan pengguna mengonfirmasi sebelum menghapus catatan data, Anda dapat membagikan kode ini sepenuhnya di acara TDataSet.BeforeDelete (BeforeDelete dari Tabel2, BeforeDelete dari Tabel3...). Keberuntungan tidak terjadi setiap hari, terkadang tidak begitu langsung dan sederhana...
Kata "As" tidak hanya sangat berguna dalam bahasa Inggris, tetapi juga dalam Delphi! Hal ini berlaku ketika kita ingin berbagi kode untuk beberapa komponen yang "serupa": kita hanya perlu menulis kode untuk salah satu komponen tersebut.
Misalnya, jika kita ingin warna latar belakang sekelompok kotak edit teks berubah menjadi coklat ketika menerima fokus input, dan untuk mengembalikan warna sistem ketika kehilangan fokus, kita dapat membagikan kode seperti ini (biarkan kejadian masing-masing kotak edit teks membagikan kode berikut):
prosedur TForm1.Edit1Enter(Pengirim: TObject);
mulai
(Pengirim sebagai TEdit).color:=ClTeal; //Dapatkan fokus masukan
akhir;
procedure TForm1.Edit1Exit(Pengirim: TObject);
mulai
(Pengirim sebagai TEdit).color:=ClWindow; //Kehilangan fokus masukan
akhir;
Contoh di atas sepertinya terlalu spesifik. Bagaimana jika saya hanya memberikan perhatian khusus pada beberapa komponen saja? Masih mengambil contoh di atas, misalnya ada dua kotak input teks yang mengharuskan dimasukkannya angka untuk menarik perhatian pengguna, warnanya berubah menjadi biru saat fokus diterima, namun saya tetap tidak mau menulis. kode untuk setiap komponen secara terpisah.
Untuk mengatasi masalah ini, Anda dapat menggunakan atribut Tag pada komponen. Pertama, tetapkan Tag bukan nol dan tidak sama pada komponen yang akan diproses secara khusus (perlu dicatat bahwa Delphi tidak akan memeriksa apakah nilai Tag sama, dan anda harus mengontrolnya sendiri pada saat desain); lalu tulis kodenya sebagai berikut, Anda masih bisa membagikan:
prosedur TForm1.Edit1Enter(Pengirim: TObject);
mulai
case (Pengirim sebagai TEdit).Tag dari
10,20:(Pengirim sebagai TEdit).Warna:=clBiru //Kotak teks untuk memasukkan angka
kalau tidak
(Pengirim sebagai TEdit).Color:=clTeal; //Kotak teks lainnya
akhir;
akhir;
(Keterangan berikut diasumsikan berada di bawah kondisi default Delphi)
1. Gunakan kata kunci Diri:
Mungkin ada yang mengira saya salah! Sebenarnya, yang ingin saya perkenalkan kepada Anda di sini adalah "trik" lain dari "pelanggar kebiasaan" penulis (karena ingatannya yang buruk). Terkadang, kami mungkin tidak dapat mengingat nama pasti dari komponen tersebut. Saat ini, jika Anda kembali ke formulir untuk mengonfirmasinya lagi (sebagian besar teman saya seharusnya seperti ini), akan sangat disayangkan. Ini sangat menghemat tenaga jika Anda menggunakan Self, karena Self di Delphi secara eksplisit mengacu pada bentuk dimana komponen berada. Oleh karena itu, kita dapat memasukkan Self diikuti dengan koma untuk mengaktifkan Kode Delphi Selesai, sistem akan segera menampilkan daftar drop-down yang berisi semua komponen formulir dan properti formulir itu sendiri, dari mana Anda dapat memilih komponen yang diperlukan. Dengan cara ini, beban kerja peralihan antara formulir dan tabel dapat dihindari.
2. Gunakan penyelesaian kode (Code Completion):
Kita tidak lagi harus mengingat terlalu banyak detail parameter karena fungsi pengisian kode Delphi. Sebelum saya menjelaskannya secara rinci, saya ingin sedikit bertele-tele. Tombol pintas default Penyelesaian Kode Delphi akan bertentangan dengan beberapa tombol pintas yang telah kita gunakan (misalnya, Ctrl+Spasi bertentangan dengan tombol pintas untuk membuka dan menutup metode input karakter Cina). Jadi harap selesaikan masalah ini terlebih dahulu.
Tentu saja, Penyelesaian Kode biasanya akan diaktifkan secara otomatis, tapi jangan berpikir semuanya akan baik-baik saja. Saya pikir Delphi harus belajar dari VB untuk teknologi ini. Misal: ketika Anda memasukkan StrToint(edit1., Delphi tidak akan secara otomatis menampilkan properti edit1. Saat ini, Anda akan menggunakan Ctrl+Spasi untuk mengaktifkan Code Completion. Apalagi jika nestingnya dalam, Delphi sepertinya bingung. .
3. Gunakan Parameter Kode:
Tombol pintasan aktivasi adalah Ctrl+Shift+Spasi. Fungsi ini juga secara otomatis diterapkan oleh Delphi. Seperti disebutkan di atas, ketika kita berpindah maju mundur atau menggerakkan kursor, fungsi ini akan hilang. Ketika kita perlu mengkonfirmasi parameter spesifik dari fungsi tersebut, kita dapat membukanya dengan tombol pintas ini. .
4. Gunakan Templat Kode:
Teknologi ini sekali lagi mencerminkan teknologi luar biasa dari para insinyur tim pengembangan Delphi Inprise dan karakter moral mulia mereka yang selalu memikirkan pengguna! (Saya hanya tidak ingin mendengar tentang orang lain yang diburu oleh Microsoft)
Tombol pintas aktivasi adalah Ctrl+J. Mekanisme implementasi fungsi ini mirip dengan pengisian kode, hanya saja tidak otomatis. Tentu saja, aspek yang paling menarik adalah pengguna dapat menentukan template sendiri. Misalnya, templat yang ditentukan oleh penulis: shortcut -> "msg"; kode -> "MessageboxMessageBox(
handle,'|',',MB_Icon...+MB_...);", segera setelah saya memasukkan pesan lalu tekan Ctrl+J, seluruh kode "menonjol", dan memindahkan kursor ke tempat di mana Saya harus menambahkan masukannya, Keren sekali!
Catatan: Jika Anda telah menentukan sendiri banyak templat lucu dan enggan membuangnya, Anda sebaiknya membuat cadangan file Delphi32.dci di direktori Delphi4Bin dan menimpanya dengan file ini setelah menginstal ulang Delphi.
Topik ini tidak boleh ditulis di sini, tapi mau tak mau saya...
1. Jika Anda dapat menggunakan pengamat objek untuk mengaturnya secara langsung tanpa mempengaruhi pengoperasian normal program, tidak perlu menulis kode:
Karena topik ini terlalu luas, berikut ini hanya satu contoh: Misalnya, Anda ingin menerapkan perintah otomatis pada bilah status di Delphi4 tanpa menjadi terlalu "keras".
Kondisi "Hint", kita tidak perlu lagi mendefinisikan suatu proses (ShowMyHint(...)) seperti sebelumnya, lalu menginisialisasinya di tempat program
Tetapkan nilainya ke acara OnHin Tapplication. Karena cukup setel properti AutoHint pada bilah status ke True! Tentu saja, sepertinya dia hanya bisa
Ditampilkan di Panel pertama (ini adalah saat tidak ada kondisi yang terlalu "keras"). Tentu saja salahkan saya karena bertele-tele, beberapa teman tidak mengetahui Petunjuk Delphi
Atribut terdiri dari dua bagian. Ini bukan tempat untuk berbicara. Jika Anda tertarik, silakan kunjungi situs pribadi penulis www.zg169.net/~delphiok (baru saja dibuka).
Zhang, belum banyak hal).
2. Simpan kode:
Jika Anda dapat menulis lebih sedikit kode, tidak perlu menulis lebih banyak kode. Jika Anda dapat memperbaikinya, tidak perlu berlebihan:
Misalnya, dua bagian kode berikut mengimplementasikan fungsi yang persis sama. Bagian mana yang Anda lebih suka gunakan?
Cuplikan kode satu:
jika ToolButton1.Down=true maka
mulai
Dbgrid1.tampilkan;
DelBtn.Diaktifkan:=true;
akhir
kalau tidak
mulai
Dbgrid1.Sembunyikan;
DelBtn.Diaktifkan:=false;
akhir;
Cuplikan kode dua:
Dbgrid1.Visible:=ToolButton1.Down;
DelBtn.Enabled:=ToolButton1.Down;
Oleh karena itu, setelah kita selesai menulis program, kita tidak hanya perlu melakukan penyesuaian program, tetapi juga menggoreng kode programnya.
3. Simpan variabel:
Beberapa pemrogram mendefinisikan variabel yang tidak diperlukan dan mendefinisikan variabel redundan yang memerlukan variabel. Menurut saya pribadi, ini tidak baik.
Kebiasaan, terutama kebiasaan mendefinisikan variabel global di setiap kesempatan, bahkan lebih dipertanyakan lagi. Beberapa pembaca mungkin berpikir bahwa saya adalah orang yang kikir
Era apa ini... Tapi saya hanya akan menunjukkan sepotong kode dan Anda akan mengerti:
prosedur TForm1.Button1Click(Pengirim: TObject);
Var s1,s2:String;
mulai
s1:=Inputbox('data','Silakan masukkan nama pengguna',');
jika s1<>' maka
mulai
Btn_Name.Enabled:=Benar;
s2:=Inputbox('data','Silakan masukkan alamat pengguna',');
jika s2<>' maka
Btn_Adress.Enabled:=Benar;
akhir;
akhir;