Visual Basic untuk Windows 3.0 (disebut sebagai VB) saat ini merupakan salah satu alat paling efektif untuk mengembangkan perangkat lunak aplikasi WINDOWS. Visual Basic ini secara komprehensif menggunakan bahasa BAIC dan alat desain visual baru. Kedua, VB memiliki mekanisme pemrograman berbasis peristiwa, yang memanfaatkan sepenuhnya karakteristik lingkungan grafis WINDOWS dan memungkinkan pengembang dengan cepat membangun aplikasi yang kuat.
Jadi bagaimana cara memperluas fungsi VB sepenuhnya saat mengembangkan perangkat lunak aplikasi VB? Hal ini memerlukan pemanfaatan bagian VB yang paling kuat dan khas di berbagai tingkatan:
●Panggil pustaka tautan dinamis pada lapisan fungsi.
●Gunakan VBX pada lapisan kontrol. ●Jalankan aplikasi lain pada lapisan aplikasi.
1. Panggil pustaka tautan fungsional (DLL) pada lapisan fungsi
Sistem operasi WINDOWS sebenarnya terdiri dari banyak perpustakaan tautan dinamis (DLL) yang kuat. VB menganggap bahwa beberapa tugas berada di luar kemampuan bahasanya sendiri, sehingga VB menyediakan kemampuan untuk memanggil langsung subrutin DLL ini di sistem operasi. Misalnya: Dalam keadaan normal, menu kontrol jendela menyediakan tujuh fungsi: memulihkan, memindahkan, mengukur, memperkecil, memaksimalkan, menutup, dan beralih. Dalam aplikasi sebenarnya, kami berharap jendela akan ditampilkan sesuai dengan ukuran yang dirancang, dan pengguna tidak diperbolehkan mengubah ukuran jendela sesuka hati, juga tidak diperbolehkan beralih ke jendela lain. Hal ini mengharuskan menu kontrol harus dihapus selama desain kecuali untuk "Pindahkan" dan "Tutup". Semua item menu kontrol kecuali opsi ”. Untuk menyelesaikan tugas ini, pertama-tama kita dapat menyetel properti MaxButton dan properti MinButton formulir ke False, yang tidak akan memperbolehkan formulir diminimalkan dan dimaksimalkan, dan formulir tidak dapat dipulihkan. Kemudian atur properti Bordersstyle formulir menjadi 1-FixedSingle atau 3-FixedDouble, yang tidak memungkinkan formulir berubah ukuran. Namun VB sendiri tidak dapat menghapus opsi "saklar" dan dua garis pemisah tersebut. Untungnya, hal ini mudah dilakukan dengan memanggil WINDOWSDLL.
Biasanya untuk menggunakan WINDOWSDLL harus terlebih dahulu menentukan subrutin DLL yang akan digunakan. Kita dapat menentukan subrutin DLL yang digunakan di dua tempat, yaitu di modul global, atau di bagian deskripsi lapisan formulir. Formatnya adalah:
DeklarasikanSub nama subrutin Lib "nama perpustakaan" [Alias "alias"] [([parameter])]
Nama subrutin DeclareFunction Lib "nama perpustakaan" [Aliass "alias"] [([parameter])] [tipe data AS]
Format pertama menunjukkan bahwa prosedur tidak memiliki nilai kembalian, dan format kedua menunjukkan bahwa prosedur mengembalikan nilai, yang dapat digunakan dalam ekspresi. Jika nama perpustakaan adalah perpustakaan di lingkungan operasi WINDOWS (di direktori Sistem), seperti "USER .EXE", "KERNEL.EXE" atau "GDI.EXE", dll., gunakan nama ini sebagai nama perpustakaan. Jika Anda menggunakan DLL dari sumber lain, gunakan nama file termasuk pathnya (misalnya: "C:WINDOWSBRUSH.DLL"). Alias (Alias) memungkinkan penggunaan nama lain untuk memanggil subprogram. Ini sangat berguna ketika nama subprogram asing sama dengan kata khusus VB. Parameternya mengacu pada nilai parameter dan tipe data yang akan diteruskan subprogram. Merujuk pada tipe data nilai yang dikembalikan fungsi, yang dapat berupa Integer, Long, Single, Double, Mata Uang, atau String. Berikut ini penjelasan subrutin DLL yang akan digunakan:
DeklarasikanFunctionGetSystemMenu%Lib"User"(ByValhWnd%,ByValbRevert%)
DeklarasikanfunctionRemoveMenu%Lib"User"(ByValhMenu%, ByValnPosition%, ByValwFlags%)
Setelah menjelaskan subrutin DLL, cara menjalankan subrutin DLL sama dengan menjalankan prosedur (fungsi) umum di VB. Selanjutnya, kita menulis proses bernama Hapus-Item-Dari-Sistem untuk menyelesaikan fungsi yang disebutkan dalam contoh di atas. Dalam prosesnya, dua subrutin DLL yang dijelaskan di atas dipanggil:
Subhapus-Item-Dari-Sysmenu (A-FormAsForm)
'Dapatkan kalimat menu sistem formulir Bing
HSysMenu=GetSystemMenu(A-Form.hWnd, 0)
'Hapus semua item menu kecuali "Pindahkan" dan "Tutup", Anda harus memulai dari item menu terakhir saat menghapus
R=RemoveMenu(HSysMenu,8,MF-BYPOSITION)'Tombol penghapus
R=RemoveMenu(HSysMenu,7,MF-BYPOSITION)'Hapus garis pemisah pertama
R=RemoveMenu(HSysMenu,5,MF-BYPOSITION)'Hapus garis pemisah kedua
Sub Akhir
Dengan proses ini, menambahkan baris kode berikut ke acara Form-Load pada formulir apa pun dapat menghapus semua item menu kontrol formulir kecuali opsi "Pindahkan" dan "Tutup":
Hapus-Item-Dari-SysmenuMe
2. Gunakan VBX pada lapisan kontrol
Bagian kedua dari fungsi kuat VB adalah penggunaan VBX, yaitu keterbukaan dan karakteristik ekspansi tanpa batas. Meskipun kotak alat VB (ToolBox) telah berusaha sebaik mungkin untuk menyertakan alat yang diperlukan untuk merancang perangkat lunak aplikasi, untuk terus memperluas fungsi VB, VB menyediakan seperangkat alat pengembangan (CustomControlDevelopmentKit) bagi pengembang pihak ketiga untuk merancang perangkat lunak yang diperlukan. kontrol. Setelah mendesain file kontrol (ekstensi filenya adalah ".VBX"), Anda dapat memilih perintah "AddFile..." dari item menu "file". Hasilnya, kotak dialog "AddFile" akan muncul di layar Klik dua kali VBX yang diperlukan. Nama file dapat digunakan untuk menambahkan VBX ke VB. Setelah kontrol ini dimuat ke VB, VB akan menambahkan kontrol asing ini ke kotak alat asli dan menggabungkannya dengan kontrol lain. Justru karena teknologi inilah VB dapat terus berkembang, dan pemrograman dengan VB menjadi lebih nyaman, cepat dan efektif. Ini adalah salah satu fitur utama VB yang membedakannya dari lingkungan pengembangan program lainnya. Sejak peluncuran VB, perusahaan perangkat lunak pihak ketiga telah merancang sejumlah besar kontrol baru. Berikut beberapa VBX yang sangat berguna saat mengembangkan aplikasi WINDOWS:
●Kontrol tiga dimensiThreed.vbx
Ini menyediakan enam kontrol tiga dimensi termasuk tombol perintah, kotak centang, tombol radio, bingkai, tombol tekan dan panel. Menggunakan kontrol ini dapat membuat formulir lebih tiga dimensi.
●Kontrol grafis Graph.vbx
Setelah mengirimkan data ke kontrol grafis, kontrol grafis dapat menggambar diagram lingkaran dua dimensi atau tiga dimensi, histogram, dan diagram tren, dan dapat dicetak atau disalin ke clipboard.
●Kontrol komunikasi Mscomm.vbx
Ini menyediakan kemampuan komunikasi serial dan dapat digunakan untuk mengirim dan menerima data antar port serial.
●Kontrol jaringan data Truegrid.vbx
Ini dapat digunakan sebagai tabel tampilan data umum, atau dapat menghubungkan database dan grid. Ini adalah alat yang ideal untuk membuat browser database atau tampilan data.
2. Jalankan aplikasi lain pada lapisan aplikasi
Saat mengkompilasi perangkat lunak berskala besar yang kompleks, kita sering kali memerlukan beberapa program khusus dengan fungsi yang relatif independen dan lengkap, seperti program pengeditan, dan program ini biasanya bersifat universal, populer, dan teruji dalam praktiknya. Jika program ini ditulis ulang oleh pengembang, beban kerja program dan proses debugging tidak hanya akan meningkat pesat, tetapi juga akan sulit untuk mencocokkan fungsi dari program umum tersebut. Tentu saja, akan ideal jika kita dapat menghubungi program-program ini secara langsung. Untungnya VB menyediakan fungsi Shell yang dapat digunakan untuk memanggil aplikasi lain, sehingga beberapa fungsi VB dapat langsung diselesaikan oleh aplikasi lain, sehingga sangat mengurangi tugas pemrograman.
Formatnya adalah Shell (string perintah [, tipe jendela])
String perintah adalah nama aplikasi yang akan dijalankan. Ekstensi file yang dapat dieksekusi terbatas pada ".COM", ".EXE", ".BAT", ".PIF". Ekstensi default adalah file .EXE. Tipe jendela adalah nilai integer, yang sesuai dengan gaya tampilan jendela saat program dijalankan. Ini opsional.
nilai tipe jendela
Tipe jendela 1, 5, 9
Jendela normal, dengan penunjuk 2
Jendela minimum dengan penunjuk (default)3
Jendela maksimum, dengan petunjuk 4, 8
Jendela normal, tidak ada petunjuk 6, 7
Jendela minimal, tidak ada penunjuk
Ketika fungsi Shell berhasil memanggil aplikasi, ia mengembalikan ID tugas (TaskID), yang mewakili identifikasi unik dari program yang dijalankan.
[contoh]
X=Shell("C:WINDOWS/NOTEPAD.EXE", 1)
Pernyataan ini memanggil CATATANPAD.EXE dalam lampiran WINDOWS sebagai program pengeditan dan mengembalikan nilai ID ke X. ->