在C Builder中定義事件的實現方法

2022-08-21 04:00:17 字數 1291 閱讀 6439

++builder是由borland公司推出的一款視覺化整合開發工具。c++builder的整合開發環境(ide)提供了一系列視覺化快速應用程式開發(rad)工具,讓程式設計師可以很輕鬆地建立和管理自己的程式和資源。那麼我們今天就來學習一下在c++builder中定義事件的實現方法吧。

一、事件

大家是否知道在c++builder中,事件是一種怎樣的存在呢?其實事件就是一種委託模型,它是對於訊息的封裝。假如說大家都已經使用過vc(microsoftvisualc++,(簡稱visualc++、msvc、vc++或vc)微軟公司的c++開發工具,具有整合開發環境,可提供編輯c語言,c++以及c++/cli等程式語言。)的話,那麼各位都應該知道在visualc++中,是並沒有什麼事件存在的。有的僅僅只是訊息處理函式,然而c++builder中就是由事件處理函式來負責響應訊息。

除此之外,事件自己本身也屬於是乙個指標,它是乙個閉包來的。一般情況下,在c++builder中有兩種事件。這兩種事件分別是自定義事件以及通知型別事件(就是我們說的tnotifyevent指標,它是對於windows訊息的封裝)。另外乙個方面,相信大家也應該知道一點,那就是事件是通過乙個虛函式點燃起來的。就好像說:onexit事件就是由doexit虛函式點燃起來的。那麼為了方便大家的理解,小編在這裡會編寫乙個關於自定義事件的示範例子。對於自定義事件最需要了解的一點是,大家的**都一定會導致這些事件發生。這些事件不會為響應使用者或系統的動作而自動發生,就算是可以編寫導致事件確實以這種方式發生的**也不例外。如果大家想要了解通知型別事件的話,大家可以在網上搜尋一下資料,小編在這裡就不詳細的介紹了。

二、示範例子

有關於自定義事件的具體程式設計**,如圖所示:

大家看完以上的程式設計**,其實可以十分明顯的看出小編所編寫**中的事件就是對於wm_mymessage訊息的封裝。那麼大家在上面的源**中,應該可以在objectinspector中,看到乙個onmyevent的事件,這個事件其實是和其它事件一模一樣的。各位朋友只需要把程式設計**寫到這裡來,那麼就可以完成響應訊息了。除此之外,大家還可以根據應用的需求來給出這個事件觸發時候的行為。好吧,上面程式設計**是有點點簡陋,畢竟只是小編隨手編寫出來的。如果大家有興趣的話,可以自已加以調整一下,編寫出乙個更加完美的源**喲。

在C Builder中定義事件

在c builder中,事件是一種委託模型,它是對訊息的封裝。如果你用過vc,你就知道在vc中並不存在什麼事件,而只有訊息處理函式,而在c builder中則是由事件處理函式來負責響應訊息。同是,事件本身也是一指標,它是乙個閉包,通常在c builder中有兩種事件 通知型別事件 即tnotifye...

在C Builder中安裝odac元件

那麼下面就講下我的安裝過程吧,我使用cb6做的編譯,英文部落格中有說可以用批處理編譯的,但我沒有成功,也沒有繼續試驗。1 dac60.bpk 2 dacvcl60.bpk 3 dcldac60.bpk 5 odacvcl60.bpk 結果沒高興完,這一步又出錯了,不能再這樣再換版本了,於是想到以前做...

在Python tkinter中自定義事件

在手機和計算機上,都有乙個鬧鐘和時鐘程式,包括秒錶 計時器 鬧鐘和時鐘4個功能。它們每1秒都要改變顯示的時間。可在另一線程建立秒計時器,每隔1秒發乙個事件,使秒錶 計時器 鬧鐘和時鐘改變時間。如用python tkinter編寫這個程式,必須自定義事件,並把自定義事件繫結到自定義事件函式,這裡介紹實...