Salah satunya Bahasa delphi fitur yang tidak ditemukan dalam bahasa modern lainnya adalah pengertian himpunan.
Delphimengatur jenis adalah kumpulan nilai-nilai yang sama tipe ordinal.
Satu set didefinisikan menggunakan set dari kata kunci:
Jenis set biasanya didefinisikan dengan subranges.
Dalam contoh di atas, TMagicNumber adalah tipe subrange kustom yang memungkinkan variabel dari tipe TMagicNumber menerima nilai dari 1 hingga 34. Sederhananya, tipe subrange mewakili subset dari nilai-nilai dalam tipe ordinal lain.
Nilai yang mungkin dari tipe set adalah semua himpunan bagian dari tipe dasar, termasuk set kosong.
Batasan pada set adalah bahwa mereka dapat menampung hingga 255 elemen.
Dalam contoh di atas, tipe set TMagicSet adalah serangkaian elemen TMagicNumber - angka integer dari 1 hingga 34.
Deklarasi TMagicSet = set TMagicNumber sama dengan deklarasi berikut: TMagicSet = set 1..34.
Set Variabel Jenis
Dalam contoh di atas, variabel blankMagicSet, oneMagicSet dan setMagicSet lainnya adalah set TMagicNumber.
Untuk berikan nilai ke variabel tipe set, gunakan tanda kurung siku dan buat daftar semua elemen set. Seperti dalam:
Catatan 1: setiap variabel tipe set dapat menampung set kosong, dilambangkan dengan [].
Catatan 2: urutan elemen dalam set tidak memiliki arti, juga tidak berarti elemen (nilai) dimasukkan dua kali dalam set.
Kata kunci IN
Untuk menguji apakah suatu elemen sudah termasuk di set (variabel) gunakan DI kata kunci:
Atur Operator
Dengan cara yang sama Anda dapat menjumlahkan dua angka, Anda dapat memiliki satu set yang merupakan jumlah dari dua set. Dengan set, acara Anda memiliki lebih banyak operator:
- + mengembalikan penyatuan dua set.
- - mengembalikan perbedaan dua set.
- * mengembalikan persimpangan dua set.
- = mengembalikan true jika dua set sama - memiliki elemen yang sama.
- <= mengembalikan true jika set pertama adalah subset dari set kedua.
- > = mengembalikan true jika set pertama adalah superset dari set kedua.
- <> mengembalikan true jika dua set tidak identik.
- IN mengembalikan true jika elemen dimasukkan dalam set.
Ini sebuah contoh:
Apakah prosedur ShowMessage akan dijalankan? Jika demikian, apa yang akan ditampilkan?
Berikut penerapan fungsi DisplayElements:
Petunjuk: ya. Tampilkan: "18 | 24 |".
Integer, Karakter, Boolean
Tentu saja, saat membuat tipe set Anda tidak dibatasi untuk nilai integer. Tipe ordinal delphi meliputi nilai karakter dan boolean.
Untuk mencegah pengguna mengetikkan kunci alfa, tambahkan baris ini di OnKeyPress dari kontrol edit:
Setel dengan Enumerasi
Skenario yang biasa digunakan dalam kode Delphi adalah mencampur kedua jenis yang disebutkan dan mengatur jenis.
Ini sebuah contoh:
Pertanyaan: apakah pesan akan ditampilkan? Jawab: tidak :(
Set di Properti Kontrol Delphi
Saat Anda perlu menerapkan "tebal" ke font yang digunakan dalam kontrol TEdit, Anda bisa menggunakan Object Inspector atau kode berikut:
Properti Font's Style adalah properti tipe set! Begini cara mendefinisikan:
Jadi, TFontStyle tipe enumerasi digunakan sebagai tipe dasar untuk tipe TFontStyles yang ditentukan. Properti Style dari kelas TFont adalah tipe TFontStyles - karena itu properti tipe set.
Contoh lain termasuk hasil dari fungsi MessageDlg. Fungsi MessageDlg digunakan untuk memunculkan kotak pesan dan mendapatkan respons pengguna. Salah satu parameter fungsi adalah parameter Buttons tipe TMsgDlgButtons.
TMsgDlgButtons didefinisikan sebagai seperangkat (mbYa, mbNo, mbOK, mbCancel, mbAbort, mbRetry, mbIgnore, mbAll, mbNoToAll, mbYesToAll, mbHelp).
Jika Anda menampilkan pesan kepada pengguna yang berisi tombol Ya, OK dan Batal dan Anda ingin menjalankan beberapa kode jika tombol Ya atau Oke diklik Anda dapat menggunakan kode berikutnya:
Kata terakhir: set itu bagus. Set mungkin tampak membingungkan untuk a Delphi pemula, tetapi segera setelah Anda mulai menggunakan variabel tipe set Anda akan menemukan mereka menyediakan lebih dari itu terdengar di awal.