---- Mungkin Anda masih ingat contoh browser pada contoh program Delphi. Dalam contoh tersebut, browser dibuat menggunakan properti dan metode kontrol THttp. Contoh ini sangat bagus untuk memahami cara menggunakan kontrol THttp. Tetapi hanya sedikit orang yang akan menggunakannya sebagai browser sebenarnya. Alasannya sangat sederhana, fungsinya terlalu terbatas, tidak mendukung Frame, tidak mendukung bahasa skrip Script, tidak dapat melihat file HTML sebagai file lokal, dll. Sebagian besar pengguna menggunakan IE atau Navigator; kami pemrogram juga senang menggunakan browser yang sudah jadi. Saat kami perlu menggunakan browser, kami memanggil browser eksternal dalam program melalui metode seperti WinExec atau CreatePROcess untuk digunakan pengguna. Cara ini memang sangat bebas masalah, namun selalu membuat saya sedikit enggan menyerahkan kendali program kepada program eksternal lainnya. Selalu membuat saya sangat merepotkan, apalagi ketika tingkat penggunaan komputer pengguna software aplikasi tidak terlalu baik tinggi. Akan lebih bagus jika ada kontrol browser yang memungkinkan Anda menyematkan browser ke dalam program Anda sendiri.
---- Jika lingkungan eksternal perangkat lunak Anda adalah WIN95+IE atau WIN98 (tingkat penggunaan perangkat lunak tersebut masih sangat tinggi), maka sudah ada kontrol browser IE di sistem yang dapat digunakan Anda belum memperhatikan waktu, jangan sia-siakan sumber daya, gunakanlah. Ketika IE 3.X atau IE 4. , Anda akan menemukan bahwa kontrol IE telah terdaftar di sistem sebagai kontrol ActiveX, sehingga kita dapat menggunakan kontrol tersebut di Delphi.
---- Karena kontrol browser IE perlu menyediakan fungsi tampilan sebelum dapat digunakan, Anda tidak dapat menggunakan CreateOleObject untuk mendapatkan instance dalam program dan langsung menggunakan properti dan metodenya, jika tidak, program akan menyebabkan kesalahan saat dijalankan; dalam hal ini, Anda perlu menggunakan fungsi yang disediakan dalam fungsi "Impor ActiveX Control" Delphi, metode operasinya dijelaskan di bawah ini.
---- Di menu "Komponen", panggil fungsi "Impor Kontrol ActiveX", pilih "Kontrol Internet Microsoft (Versi 1.1)" di daftar Kontrol Terdaftar, dan jalur yang ditunjukkan pada bilah prompt di bawah adalah C:PWin98SystemSHDOCVW .DLL, tiga kontrol yang dapat didaftarkan tercantum dalam Nama Kelas (daftar jenis): TWebBrowser_V1, TWebBrowser dan TShellFolderViewOC masing-masing merupakan kontrol browser IE3, kontrol browser IE4 dan kontrol "Microsoft Shell Folder View Router". Klik Instal untuk menginstal. Setelah instalasi selesai, tiga kontrol akan ditambahkan di bilah kontrol "ActiveX", yaitu TWebBrowser_V1, TWebBrowser dan TShellFolderViewOC; di direktori Impor Delphi, file SHDocVw_TLB.PAS akan dibuat, yang berisi detail pengemasan ketiga kontrol ini. , tentunya berisi penjelasan tentang properti dan metode kontrolnya, yang dapat dijadikan acuan kita dalam menggunakan kontrol tersebut.
----
Ambil TWebBrowser (kontrol browser IE4) sebagai contoh. Properti umum dan metode TWebBrowser terutama meliputi: GoBack: metode, kembali ke halaman sebelumnya. GoForward: metode untuk maju ke halaman berikutnya. GoHome: Metode, memanggil halaman beranda default, yang diatur dalam opsi IE. GoSearch: Metode, memanggil halaman pencarian default, yang diatur dalam opsi IE. Navigate(const URL: WideString; var Flags, TargetFrameName, PostData, Headers: OleVariant): metode, memanggil halaman yang ditentukan, parameter spesifiknya adalah sebagai berikut: URL: URL halaman yang ditentukan. Flags: Tipe kata, fungsinya belum jelas, bisa diset ke 0. TargetFrameName: WideString, buka Bingkai tempat halaman berada. Jika itu adalah string kosong, itu akan dibuka di Bingkai saat ini; jika Bingkai yang ditentukan oleh TargetFrameName ada, itu akan dibuka di Bingkai jika Bingkai ditentukan oleh TargetFrameName tidak ada, jendela baru akan terbuka. Ini setara dengan Untuk memanggil browser IE eksternal. PostData: boolean, apakah mengizinkan pengiriman data. Header: WideString, data header dari permintaan URL yang akan dikirim. Refresh: metode, segarkan halaman saat ini. Berhenti: Metode, berhenti menelepon atau membuka halaman saat ini. LocationName: Properti (WideString), nama lokasi saat ini. LocationURL: Properti (WideString), URL lokasi saat ini. Sibuk: Atribut (Boolean), apakah sedang sibuk. Terlihat: Properti (Boolean), apakah jendela browser terlihat. (Properti berikut ini baru di TWebBrowser dan tidak tersedia di TWebBrowser_V1, dan fungsinya perlu dieksplorasi) StatusBar: Properti (Boolean), apakah akan menampilkan bilah status. StatusText: Properti (WideString), konten bilah status. ToolBar: Properti (SYSINT), konten di toolbar. MenuBar: Properti (Boolean), apakah akan menampilkan bilah menu. Layar Penuh: Properti (Boolean), apakah akan ditampilkan dalam layar penuh. Offline: Properti (Boolean), apakah akan menjelajah secara offline. AddressBar: Properti (Boolean), apakah akan menampilkan bilah alamat. Peristiwa umum TWebBrowser terutama mencakup: OnStatusTextChange = procedure(Sender: TObject; const Text: WideString) objek;
---- Terjadi ketika informasi prompt bilah status berubah. Parameter Teks adalah informasi prompt bilah status saat ini. Kita dapat memperbarui informasi prompt bilah status kita sendiri atau menangani transaksi lain berdasarkan informasi ini.
----OnProgressChange = prosedur(Pengirim: TObject; Progress, ProgressMax: Integer) objek;
---- Terjadi ketika kemajuan halaman terbuka berubah. Parameter Kemajuan adalah kemajuan saat ini dan ProgressMax adalah kemajuan total Kita dapat memperbarui informasi cepat bilah status kita atau menangani transaksi lain berdasarkan dua parameter ini.
----OnCommandStateChange = prosedur(Pengirim: TObject; Perintah: Integer; Aktifkan: WordBool) objek;
---- Terjadi ketika perintah baru dijalankan. Command adalah pengidentifikasi perintah, dan Enable adalah apakah perintah boleh dijalankan. OnTitleChange = prosedur(Pengirim: TObject; const Teks: WideString) objek;
---- Terjadi ketika judul halaman berubah, Teks adalah judul saat ini.
----OnPropertyChange = prosedur(Pengirim: TObject; const Property_: WideString) objek;
---- Terjadi ketika properti halaman berubah, Property_ adalah nama properti OnDownloadComplete: TNotifyEvent
---- Terjadi setelah halaman pengunduhan selesai.
----Saat DownloadBegin: TNotifyEvent
---- Terjadi sebelum halaman pengunduhan dimulai.
---- (1) Buatlah sistem bantuan Anda sendiri
---- Kami menggunakan kontrol browser IE untuk membuat sistem bantuan bagi pengguna. File bantuan terdiri dari beberapa file HTML. Satu topik berhubungan dengan satu file HTML (Topic.HTM), dan item di bawah setiap topik sesuai dengan File HTML. Dengan cara ini, di sistem kami, kami tidak perlu lagi memanggil browser IE atau program WinHelp untuk memberikan bantuan kepada pengguna. Saya yakin Anda semua mengetahui kelebihan file bantuan HTML dibandingkan dengan file bantuan HLP tradisional.
---- Contoh berikut menunjukkan penggunaan metode Navigasi TWebBrowser (kontrol browser IE4). Harap perhatikan komentar dalam program ini. (Di bawah ini adalah cuplikan utama program).
{Memanggil file bantuan sesuai dengan topik dan proyek}prosedur ShowHelp(HelpTopic,HelpItem: String);var TargetFrameName,PostData,Heads,Flags:OleVariant;URL:widestring;begin TargetFrameName:= ';{Saat menentukan string kosong dari Frame, lalu Buka file bantuan di Frame saat ini} PostData := false;{Jangan kirim data} Heads := ';{Informasi header kosong} Flags := 0;{Bendera disetel ke 0} URL := HelpTopic + '.HTM#'+HelpItem;{URL informasi bantuan} dengan formHelp.webbrowser do{Tampilkan informasi bantuan di kontrol browser IE di jendela bantuan} mulai bernavigasi( URL,Bendera,TargetFrameName,PostData,Heads);{Tampilkan informasi bantuan} end;end;
---- (2) Menampilkan animasi GIF
---- Jika Anda tidak memiliki kontrol tampilan animasi yang sesuai, Anda sebaiknya mencoba metode berikut.
procedure ShowGIF( GIFFileName : String );var TargetFrameName,PostData,Heads,Flags : OleVariant; URL : widestring;begin TargetFrameName := ';{Ketika string kosong dari Frame ditentukan, file animasi akan dibuka di Frame saat ini} PostData := false;{Jangan kirim data} Heads := ';{Informasi header kosong} Flags := 0;{Flags disetel ke 0} URL := GIFFileName; formGIF.webbrowser do{Tampilkan animasi di kontrol browser IE di jendela yang ditentukan} mulai menavigasi(URL,Bendera,TargetFrameName,PostData,Heads);{Tampilkan file animasi} end;end;
----Program di atas telah di-debug di bawah PWIN98+Delphi3.0.