datawindow 常用事件
datawindow上的事件,按照順序(除開公用事件)
事件名稱 事件觸發的時機
01.ButtonClicking 在資料視窗中的按鈕物件正在被單擊時觸發
02.ButtonClicked 在資料視窗中的按鈕物件被單擊後觸發
03.DbError 當資料視窗中發生了資料庫錯誤時觸發
04.DoubleClicked 當用戶雙擊資料視窗控制元件時觸發;對於RichText風格的資料視窗,當雙擊資料視窗中的文字時觸發
05.EditChanged 當游標進入資料視窗物件中的一個欄位時觸發
06.Error 當資料視窗資料表示式或屬性表示式中發現錯誤時觸發
07.ItemChanged 當資料視窗上的區域被修改並且失去了焦點(如使用者按回車鍵、Tab鍵或箭頭鍵,或者用滑鼠選另一個區域)時觸發
08.ItemError 當一個域被修改並且失去焦點,且域不符合列上的合法性規則時觸發
09.ItemFocusChanged 當焦點改變時觸發
10.PrintStart 當資料視窗列印開始時觸發
11.PrintEnd 當資料視窗列印結束時觸發
12.PrintPage 在資料視窗的每一頁設定列印格式之前觸發
13.Resize 當用戶或程式重設視窗大小時觸發
14.RetrieveStart 當資料視窗檢索將要開始時觸發
15.RetrieveEnd 當資料視窗的檢索完成時觸發
16.RetrieveRow 在一行資料被檢索出來之後觸發
17.RowFocusChanging 當資料視窗當前行正在改變時觸發
18.RowFocusChanged 當資料視窗當前行改變之後觸發
19.ScrollHorizontal 當用戶用Tab鍵、箭頭鍵或滾動條左右滾動資料視窗控制元件時觸發
20.ScrollVertical 當用戶用Tab鍵、箭頭鍵或滾動條上下滾資料視窗控制元件時觸發
21.SqlPreview 在呼叫Retrieve、Update或Selectrow函式時,SQL語句提交到DBMS之前觸發
22.UpdateStart 恰在呼叫Update函式之後,資料視窗中的改變傳送到資料庫之前觸發
23.UpdateEnd 當所有從資料視窗到資料庫的修改完成時觸發
window中的事件
事件名 觸發的時機
01.Activate 在視窗啟用之前觸發
02.Clicked 當用戶用滑鼠單擊視窗的空白區域(沒有控制元件的區域)時觸發
03.Close 當關閉視窗時觸發
04.CloseQuery 當清除或關閉視窗時觸發。然後檢查Message.ReturnValue的值,若為1,則視窗不能關閉
05.Deactivate 當視窗變為非活動狀態時觸發
06.DoubleClicked 當用戶雙擊視窗的空白區域時觸發
07.DragDrop 當一個可拖動的控制元件被拖動到視窗上時觸發
08.DragEnter 當一個可拖動的控制元件進入視窗時觸發
09.DragLeave 當一個可拖動的控制元件離開視窗時觸發
10.DragWithin 當一個可拖動的控制元件在視窗內部拖動時觸發
11.Hide 在視窗被隱藏時觸發
12.HotLinkAlarm 在DDE中伺服器應用已經發送了新的資料,客戶DDE應用已經接收到這些資料時觸發
13.Key 當用戶擊了一個鍵且插入點不在RichTextEdit編輯控制元件或資料視窗控制元件時觸發
14.MouseDown 當用戶在視窗的空白區域按下滑鼠左鍵時觸發
15.MouseMove 當滑鼠在視窗內移動時觸發
16.MouseUp 當用戶在視窗的空白區域釋放滑鼠左鍵時觸發
17.Open 當程式呼叫以此視窗為引數的Open函式時,此事件在該視窗開啟之後,顯示之前觸發
18.Help .........
19.Other 當一個非PowerBuilder事件的Windows資訊發生時觸發
20.RButtonDown 在視窗的空白區域單擊滑鼠右鍵時觸發
21.RemoteExec 當一個DDE客戶應用傳送了一個命令時觸發
22.RemoteHotLinkStart 當一個DDE客戶應用開始一個熱連線時觸發
23.RemoteHotLinkStop 當一個DDE客戶應用結束一個熱連線時觸發
24.RemoteRequest 當一個DDE客戶應用請求資料時觸發
25.RemoteSend 當一個DDE客戶應用已經發送了資料時觸發
26.Resize 當用戶或程式開啟或重設視窗大小時觸發
27.Show 當程式執行此視窗的show函式時,此事件在視窗顯示之前觸發
28.SystemKey 當插入點不在某個行編輯中且使用者按了ALT或ALT加其它鍵時觸發
29.Timer 在呼叫Timer函式後,經過了Timer函式指定的時間後觸發
30.ToolBarMoved 當MDI視窗的工具條移動時觸發
以上是我新建一個window是window的事件原來的順序,
下面是我自己常用的排序:
01.window開啟時發生的事件
事件名 觸發的時機
Activate 在視窗啟用之前觸發
Resize 當用戶或程式開啟或重設視窗大小時觸發
Open 當程式呼叫以此視窗為引數的Open函式時,此事件在該視窗開啟之後,顯示之前觸發
Show 當程式執行此視窗的show函式時,此事件在視窗顯示之前觸發
02.window關閉時發生的事件
Deactivate 當視窗變為非活動狀態時觸發
CloseQuery 當清除或關閉視窗時觸發。然後檢查Message.ReturnValue的值,若為1,則視窗不能關閉
Close 當關閉視窗時觸發
03.關於滑鼠擊鍵事件
Clicked 當用戶用滑鼠單擊視窗的空白區域(沒有控制元件的區域)時觸發
DoubleClicked 當用戶雙擊視窗的空白區域時觸發
MouseDown 當用戶在視窗的空白區域按下滑鼠左鍵時觸發
MouseMove 當滑鼠在視窗內移動時觸發
MouseUp 當用戶在視窗的空白區域釋放滑鼠左鍵時觸發、
RButtonDown 在視窗的空白區域單擊滑鼠右鍵時觸發
注:當按下滑鼠左鍵時,MouseDown事件觸發,當釋放滑鼠左鍵時,Clicked事件和MouseUp事件觸發
04.計時觸發
Timer 在呼叫Timer函式後,經過了Timer函式指定的時間後觸發
05.託動觸發
DragDrop 當一個可拖動的控制元件被拖動到視窗上時觸發
DragEnter 當一個可拖動的控制元件進入視窗時觸發
DragLeave 當一個可拖動的控制元件離開視窗時觸發
DragWithin 當一個可拖動的控制元件在視窗內部拖動時觸發
06.選單及選單工具欄移動是觸發
ToolBarMoved 當MDI視窗的工具條移動時觸發
07.其它不常用的(指的是我自己)
Hide 在視窗被隱藏時觸發
HotLinkAlarm 在DDE中伺服器應用已經發送了新的資料,客戶DDE應用已經接收到這些資料時觸發
RemoteExec 當一個DDE客戶應用傳送了一個命令時觸發
RemoteHotLinkStart 當一個DDE客戶應用開始一個熱連線時觸發
RemoteHotLinkStop 當一個DDE客戶應用結束一個熱連線時觸發
RemoteRequest 當一個DDE客戶應用請求資料時觸發
RemoteSend 當一個DDE客戶應用已經發送了資料時觸發
Key 當用戶擊了一個鍵且插入點不在RichTextEdit編輯控制元件或資料視窗控制元件時觸發
Help .........
Other 當一個非PowerBuilder事件的Windows資訊發生時觸發
SystemKey 當插入點不在某個行編輯中且使用者按了ALT或ALT加其它鍵時觸發
-----------------------------------------------------------------------
在window上的能應用的控制元件非常多
但是控制元件的事件有一部分是相同的
2.視窗上控制元件的公共事件
事件名 觸發的時機
Clicked 當單擊視窗或控制元件時觸發
Constructor 在視窗中的open事件發生之前觸發
Destructor 在視窗中的close事件發生之後觸發
GetFocus 在此控制元件得到焦點上時觸發
LoseFocus 在此控制元件失去焦點時觸發
DragDrop 當一個可拖動的控制元件被拖動到視窗或控制元件上時觸發
DragEnter 當一個可拖動的控制元件進入視窗或控制元件上時觸發
DragLeave 當一個可拖動的控制元件離開視窗或控制元件時觸發
DragWithin 當一個可拖動的控制元件在視窗或控制元件內部時觸發
RbuttonDown 在控制元件區域內單擊滑鼠右鍵時觸發
Other 當一個非PowerBuilder事件的Windows資訊發生時觸發
-------------------------------------------------------------------------
說一下我個人常用的幾種事件
01.資料視窗欄位輸入的時候觸發的事件
EditChanged 當游標進入資料視窗物件中的一個欄位時觸發
ItemChanged 當資料視窗上的區域被修改並且失去了焦點(如使用者按回車鍵、Tab鍵或箭頭鍵,或者用滑鼠選另一個區域)時觸發
ItemFocusChanged 當焦點改變時觸發
ItemError 當一個域被修改並且失去焦點,且域不符合列上的合法性規則時觸發
如果EditChanged,ItemChanged,ItemFocusChanged這三個事件報錯促發ItemError
如果在ItemChanged事件中設定了行為/返回程式碼1,則DataWindow控制元件拒絕接受資料且不允許焦點發生變化
02.滑鼠單雙擊資料視窗按鈕
ButtonClicking 在資料視窗中的按鈕物件正在被單擊時觸發
ButtonClicked 在資料視窗中的按鈕物件被單擊後觸發
eg:
choose case dwo.name
case 'cb_name'
//動作......
case .......
end choose
03.資料視窗檢索前後觸發的事件
RetrieveStart 當資料視窗檢索將要開始時觸發
RetrieveEnd 當資料視窗的檢索完成時觸發
RetrieveRow 在一行資料被檢索出來之後觸發
在RetrieveStart事件中設定了行為/返回程式碼2,在檢索資料之前不要重置行,也就是上次retrieve的資料會被保留下來
04.列印前後
PrintStart 當資料視窗列印開始時觸發
PrintEnd 當資料視窗列印結束時觸發
PrintPage 在資料視窗的每一頁設定列印格式之前觸發
05.其它的我自己不常用,就不多說了
------------------------------------------------------------------
4.單行編輯器控制元件、編輯掩碼控制元件、多行編輯控制元件的事件
這三個控制元件有相同的事件,都有公共事件中除了Clicked事件之外的10種事件,另外還有Modify事件
Modify事件在控制元件的文字被改變之後,使用者按了回車鍵或Tab鍵,或用滑鼠把焦點改變到另一個控制元件上時觸發
---------------------------------------------------------------------
5.超文字編輯控制元件的事件
事件名稱 觸發的時機
01.FileExists 當該控制元件的內容儲存到一個已存在的檔案時觸發
02.InputFieldSelected 當選定輸入域後雙擊或按下回車鍵時觸發
03.key 當按下一個鍵時觸發
04.Modify 當該控制元件中的內容第一次改變,但還沒有儲存時觸發
05.MouseDown 當按下滑鼠左鍵時觸發
06.MouseMove 當滑鼠在該控制元件中移動時觸發
07.MouseUp 當放開滑鼠左鍵時觸發
08.PictureSelected 當選定點陣圖後雙擊或按下回車鍵時觸發
09.PrintFooter 當列印該控制元件內容的頁尾時觸發
10.PrintHeader 當列印該控制元件內容的頁首時觸發
11.RbuttonUp 當在該控制元件中放開滑鼠右鍵時觸發
---------------------------------------------------------------------
6.滾動條事件
左右滾動條事件名稱 事件觸發時機
LineLeft 當點中了控制元件的左箭頭時觸發
LineRight 當點中了控制元件的右箭頭時觸發
PageLeft 當點中了控制元件的左部的開放空間時觸發
PageRight 當點中了控制元件的右部的開放空間時觸發
Moved 當控制元件的滾動鈕被移動時觸發
上下滾動條事件名稱 事件觸發時機
LineDown 當點中了控制元件的下箭頭時觸發
LineUp 當點中了控制元件的上箭頭時觸發
PageDown 當點中了控制元件的下部的開放空間時觸發
PageUp 當點中了控制元件的上部的開放空間時觸發
Moved 當控制元件的滾動鈕被移動時觸發
----------------------------------------------------------------------
7.列表框控制元件的事件
PowerBuilder提供了四個列表框控制元件:列表框、圖片列表框、下拉列表框和下拉圖片列表框。
它們都有公共事件中除了Clicked事件之外的10種事件。
此外,下拉列表框和下拉圖片列表框還有DoubleClicked事件、Modify事件和SelectionChanged事件。
列表框、圖片列表框還有DoubleClicked事件和SelectionChanged事件。
------------------------------------------------------------------------
8.樹狀瀏覽控制元件的事件
事件名稱 事件觸發時機
01.BeginDrag 按下滑鼠左鍵開始拖動時觸發
02.BeginLabelEdit 編輯TreeView選中的項標籤時觸發
03.BeginRightDrag 按下滑鼠右鍵開始拖動時觸發
04.DeleteItem TreeView項被刪除時觸發
05.DoubleClicked 雙擊滑鼠左鍵時觸發
06.EndLabelEdit 對TreeView的項標籤結束編輯時觸發
07.ItemCollapsed 當TreeView控制元件收縮完成時觸發
08.ItemCollapsing 當TreeView控制元件收縮開始時觸發
09.ItemExpanded 當TreeView控制元件展開後觸發
10.ItemExpanding 當TreeView控制元件展開之前觸發
11.ItemPopulate 當TreeView控制元件第一次展開時觸發
12.RightClicked 按下滑鼠右鍵時觸發
13.RightDoubleClicked 在控制元件中雙擊滑鼠右鍵時觸發
14.SelectionChanged TreeView專案被選中後觸發
15.SelectionChanging TreeView當前專案改變之前觸發
16.Sort 兩個專案為排序進行比較時觸發
-------------------------------------------------------------------------------
9.列表瀏覽控制元件的事件
事件名稱 事件觸發時機
01.BeginDrag 按下滑鼠左鍵開始拖動時觸發
02.BeginLabelEdit 編輯ListView選中的項標籤時觸發
03.BeginRightDrag 按下滑鼠右鍵開始拖動時觸發
04.ColumnClicked 在控制元件中滑鼠左鍵單擊列標題時觸發
05.DeleteAllItems 所有項被刪除時觸發
06.DeleteItem ListView項被刪除時觸發
07.DoubleClicked 雙擊滑鼠左鍵時觸發
08.EndLabelEdit 對ListView的項標籤結束編輯時觸發
09.InsertItem 為ListView插入項時觸發
10.ItemChanged 控制元件中當前專案改變後觸發
11.ItemChanging 控制元件中當前專案改變前觸發
12.key 使用者按下鍵時觸發
13.RightClicked 按下滑鼠右鍵時觸發
14.RightDoubleClicked 在控制元件中雙擊滑鼠右鍵時觸發
15.Sort 兩個專案為排序進行比較時觸發
----------------------------------------------------------------------------------
10.Tab頁控制元件的事件
事件名稱 事件觸發時機
01.DoubleClicked 雙擊滑鼠左鍵時觸發
02.Key 使用者按下鍵時觸發
03.RightClicked 按下滑鼠右鍵時觸發
04.RightDoubleClicked 在控制元件中雙擊滑鼠右鍵時觸發
05.SelectionChanging Tab控制元件當前頁改變之前觸發
06.SelectionChanged Tab控制元件當前頁改變後觸發
-----------------------------------------------------------------------------------
11.OLE控制元件的事件
事件名稱 事件觸發時機
01.Close 當OLE控制元件的伺服器關閉時觸發
02.Datachange 伺服器應用資料改變時觸發
03.DoubleClicked 在控制元件內雙擊滑鼠左鍵時觸發
04.Error 當OLE控制元件操作出現錯誤時觸發
05.ExternalException OLE伺服器自動執行處理以外的操作時觸發
06.PropertyChanged OLE控制元件改變物件後觸發
07.PropertyRequestEdit OLE控制元件改變物件時觸發
08.Rename 當伺服器中物件改名時觸發
09.Save 伺服器寫資料時觸發
10.ViewChange 伺服器進行預覽時觸發
-------------------------------------------------------------------------------------
12.選單事件
選單物件的事件比較簡單,只有兩個Clicked事件和Selected事件。
Clicked事件:在某選單上單擊滑鼠左鍵時觸發。
Selected事件:游標移入選單條時觸發。
--------------------------------------------------------------------------------------
13.使用者自定義事件
這種東東目前正在研究,太多了,慢慢來
轉資料一份
PB中自定義事件ID含義
Event ID 含義內容淺析,
單選或多選按鈕訊息(字首:pbm_bm)
pbm_bmgetcheck 單選按鈕或多選按鈕是否被選。
pbm_bmgetstate 按鈕是否加亮。
pbm_bmsetcheck 將無線按鈕或確認框的選中狀態改為未選中狀態,反之亦然。
pbm_bmsetstate 加亮或不加亮按鈕。
pbm_bmchange 改變按鈕的風格,例如,改為單選按鈕或組合框。
單選或多選按鈕通知訊息(字首:pbm_bn)
pbm_bnclicked 按鈕控制元件被點中。
pbm_bndisable 使按鈕控制元件無效。
pbm_bndoubleclicked 按鈕控制元件被雙點。
pbm_bndragdrop 一個物件被放到按鈕控制元件。
pbm_bndragenter 一個物件被拖到按鈕控制元件。
pbm_bndragleave 一個物件被拖離按鈕控制元件。
pbm_bndragover 一個物件被拖經按鈕控制元件。
pbm_bnhilite 按鈕控制元件被加亮。
pbm_bnpaint 按鈕控制元件被繪製。
pbm_bnsetfocus 按鈕控制元件獲得聚焦。
pbm_bnunhilite 按鈕控制元件不被加亮。
通用對話方塊訊息(字首:pbm_cb)
pbm_cbaddstring 將字串加到通用對話方塊。
pbm_cbdeletestring 從通用對話方塊刪除一個字串。
pbm_cbdir 加一個目錄列表到通用對話方塊。
pbm_cbfindstring 搜尋以一組字元開頭的字串。
pbm_cbfindstringexact 搜尋與所提供的字元完全匹配的字串。
pbm_cbgetcount 列表框中的項數。
pbm_cbgetcursel 當前被選項的數目。
pbm_cbgetdroppedcontrolset 列表框在螢幕上的座標位置。
pbm_cbgeteditsel 編輯器控制元件中被選字元的範圍。
pbm_cbgetextendedui 預設或擴充套件的使用者介面。
pbm_cbgetitemdata 重畫的列表框中的4位元組(32位)項。
pbm_cbgetitemheight 列表框中某一項的高度。
pbm_cbgetlbtext 列表框中的文字。
pbm_cbgetlbtextlen 列表框中文字的長度。
pbm_cbinsertstring 向列表框中增加新的字串或4位元組項。
pbm_cblimittext 限制能被輸入到列表框中的字元數。
pbm_cbresetcontent 刪除列表框中所有元素。
pbm_cbselectstring 搜尋匹配的字串並顯示。
pbm_cbsetcursel 在列表框中選擇並顯示一項。
pbm_cbseteditsel 在列表框的編輯區域中選擇一塊文字。
pbm_cbsetextendedui 設定預設或擴充套件的使用者介面。
pbm_cbsetitemdata 在列表框中設定4位元組(32位)項。
pbm_cbsetitemheight 設定列表框中項的高度。
pbm_cbshowdropdown 轉換(顯示或隱藏)列表框中拖放區域。
通用對話方塊通知訊息(字首:pbm_cbn)
pbm_cbndblclk 使用者在列表中某一項上雙點。
pbm_cbndragdrop 一個物件被放到通用對話方塊控制元件上。
pbm_cbndragenter 一個物件被拖到通用對話方塊控制元件上。
pbm_cbndragleave 一個物件被拖離通用對話方塊控制元件。
pbm_cbndragover 一個物件被拖經通用對話方塊控制元件。
pbm_cbndropdown 列表框的下放區域即將被顯示。
pbm_cbneditchange 編輯器控制元件中的文字發生變化。
pbm_cbneditupdate 列表框編輯器控制元件中的文字即將被改變。
pbm_cbnerrspace 列表框滿,不能再向其中加入項。
pbm_cbnkillfocus 通用列表框失去聚焦。
pbm_cbnselchange 列表框中被選文字被改變。
pbm_cbnselendcancel 使用者按下了"取消"按鈕。
pbm_cbnselendok 使用者按下了"確認"按鈕。
pbm_cbnsetfocus 通用對話控制元件擁有聚焦。
資料視窗訊息(字首:pbm_dw)
pbm_dwclosedropdown 關閉下拉式資料視窗。
pbm_dwscrollend 在資料視窗中卷滾到最後一行。
pbm_dwscrollhome 在資料視窗中卷滾到第一行。
pbm_dwscrolllineend 卷滾到當前行的行尾(水平方向)。
pbm_dwscrolllinehome 卷滾到當前行的行首(水平方向)。
資料視窗通知訊息(字首:pbm_dwn)
pbm_dwnbacktabout 即將通過Shift+Tab組合鍵離開該控制元件。
pbm_dwnchanging 控制元件即將被改變。
pbm_dwndropdown 下拉式列表框的下拉部分即將可見。
pbm_dwngraphcreate 即將建立圖形。
pbm_dwnitemchangefocus 資料視窗控制元件中當前項的聚焦改變。
pbm_dwnitemvalidationerror 對當前項的修改引起了一個合法性檢查錯誤。
pbm_dwnkey 有鍵被按下。使用KeyDown()處理鍵盤值。
pbm_dwnlbuttondown 滑鼠左鍵被按下。
pbm_dwnlbuttonup 滑鼠左鍵被鬆開。
pbm_dwnmbuttonclk 滑鼠中鍵點選。
pbm_dwnmbuttondbclk 滑鼠中鍵雙擊。
pbm_dwnmousemove 滑鼠移動。
pbm_dwnprintmarginchange 列印邊界被改變。
pbm_dwnprocessenter 回車鍵被按下。
pbm_dwnrowchange 資料視窗中聚焦從一行轉向另一行。
pbm_dwntabdownout 使用者在資料視窗最後一行按了下箭頭鍵。
pbm_dwntabout 使用者在資料視窗的最後一行/列中按了tab鍵。
pbm_dwntabupout 使用者在資料視窗第一行中按了上箭頭鍵。
動態資料交換(DDE)訊息(字首:pbm_dde)
pbm_ddeddeack 收到一個DDE訊息。
pbm_ddeddeinitiate 開始一個DDE會話。
pbm_ddeddeterminate 終止一個DDE會話。
編輯器控制元件訊息(字首:pbm_em)
pbm_emcanundo 編輯器控制元件是否能撤消上一次修改。
pbm_ememptyundobuffer 清空由Windows管理的取消操作的緩衝區。
pbm_emfmtlines 在多行編輯器控制元件的行尾增加或刪除回車換行。
pbm_emgetfirstvisibleline 返回編輯器控制元件中可見的第一行的行號。
pbm_emgethandle 獲得編輯器控制元件使用的記憶體控制代碼。
pbm_emgetline 從編輯器控制元件中複製一行到記憶體中的一個緩衝區。
pbm_emgetlinecount 返回多行編輯器控制元件的行數。
pbm_emgetmodify 文字是否被使用者修改。
pbm_emgetrect 返回控制元件的長方形域。
pbm_emgetsel 返回被選文字的起始位置。
pbm_emlimittext 限制使用者鍵入的文字長度。
pbm_emlinefromchar 返回被選文字的行號。
pbm_emlineindex 返回編輯器控制元件中被選行第一個字元在編輯串中的位置。
pbm_emlinelength 返回編輯器控制元件中被選行中的字元數。
pbm_emlinescroll 水平或垂直卷滾編輯器控制元件。
pbm_emreplacesel 從剪貼簿或從鍵盤上用新文字替換被選文字。
pbm_emsethandle 設定編輯器控制元件的控制代碼指向記憶體中的一個緩衝區。
pbm_emsetmodify 設定編輯器控制元件的modified標誌。
pbm_emsetpasswordchar 設定使用者輸入任何文字時顯示的字元,在輸入密碼時的顯示。
pbm_emsetrect 設定/重置編輯器控制元件所在的長方形區域,編輯器控制元件中的文字被重畫。
pbm_emsetrectnp 除了不重畫文字,大致與setrect相同。
pbm_emsetsel 選擇字元。
pbm_emsettabstops 在多行編輯器控制元件中設定tabstops。
pbm_emsetwordbreak 設定新的詞拆分函式。
pbm_emsetwordbreakproc 設定新的詞拆分過程。
pbm_emundo 撤消最近的編輯操作。
編輯控制元件通知訊息(字首:pbm_en)
pbm_enchange 編輯器控制元件中的文字發生改變。
pbm_enerrspace 編輯器控制元件記憶體緩衝區溢位。
pbm_enhscroll 使用者點中上水平卷滾條。
pbm_enmaxtext 使用者試圖輸入比允許更多的文字。
pbm_enupdate 編輯器控制元件即將顯示使用者的修改。
pbm_envscroll 使用者點中了垂直卷滾條。
列表框訊息(字首:pbm_lb)
pbm_lbaddstring 向列表框控制元件中增加一項或一個字串。
pbm_lbdeletestring 從列表框中刪除一項或一個字串。
pbm_lbdir 用目錄列表填充列表框。
pbm_lbfindstring 在列表框中搜索與所給字串部分匹配的第一項。
pbm_lbfindstringexact 在列表框中搜索與所給字串精確匹配的第一項。
pbm_lbgetcaretindex 在列表框中搜索擁有聚焦的項。
pbm_lbgetcount 確定列表框中的項數。
pbm_lbgetcursel 確定所選項是第幾項。
pbm_lbgethorizontalextent 獲得列表框的寬度、計算水平卷滾。
pbm_lbgetitemheight 確定列表框控制元件中項的高度。
pbm_lbgetitemrect 確定列表框的尺寸。
pbm_lbgetsel 獲得列表框中當前所選的項。
pbm_lbgetselcount 在多選列表框中獲得所選項的數目。
pbm_lbgetselitems 用列表框中表框各自的項號填充一個給定的整數陣列。
pbm_lbgettext 獲得列表框中當前所選項的文字。
pbm_lbgettextlen 獲得列表框中當前所選項的文字中的字元數。
pbm_lbgettopindex 確定列表框中可見的最上面一項的項號。
pbm_lbinsertstring 向列表框中加入一個新字串。
pbm_lbresetcontent 重置(消除)列表框中的內容。
pbm_lbselectstring 搜尋並加亮與所給字元匹配的字串。
pbm_lbselitemrange 選擇/取消列表框中某一範圍中的項。
pbm_lbsetcaretindex 設定列表框中的某一項擁有聚焦。
pbm_lbsetcolumnwidth 設定列表框中列的寬度。
pbm_lbsetcursel 在列表框中選擇並加亮一項;如果需要,卷滾到列表框。
pbm_lbsethorizontaltext 設定列表框中被水平卷滾的單元數。
pbm_lbsetitemdata 設定與列表框相關的32位/4位元組值。
pbm_lbsetitemheight 設定列表框中項的高度。
pbm_lbsetsel 在列表框中選擇一個字串。
pbm_lbsettabstops 設定列表框控制元件中tabstops的位置。
pbm_lbsettopindex 卷滾列表框使特定的項成為可見的最上面一項。
列表框通知訊息(字首:pbm_en)
pbm_endblclk 使用者在列表框控制元件中的某一項上雙擊。
pbm_enerrspace 使用者試圖超越可在列表框中輸入字元的最大限制。
pbm_enselcancel 當前選取文字被取消。
pbm_enselchange 使用者在列表框中選擇或取消了一項。
視窗訊息(字首:pbm_)
pbm_activateapp 被啟用的視窗屬於另外一個應用。
pbm_askcbformatname 要求剪貼簿中的內容被複制到一個使用自定義格式的文字緩衝區中。
pbm_char 傳送鍵盤上按下的鍵。
pbm_chartoitem 通過轉換鍵盤來的字元,幫助列表框定位其中的項。
pbm_childactivate 一個子視窗被移動或啟用。
pbm_clear 使用者要刪除當前編輯器控制元件中的內容。
pbm_command 使用者選擇了一個選單項、控制元件,或使用了加速鍵。
pbm_compacting 系統記憶體資源不足;當Windows佔用了多於1/8的CPU時間緊縮記憶體時,產生這條訊息。
pbm_compareitem 當新的一項被加入列表框或組合框時產生此訊息,Window用這條訊息進行項之間的比較。
pbm_ctlcolor 一個控制元件即將被畫出,可在此時改變控制元件的顏色。
pbm_deadchar 使用者選擇了一種非英語字符集或其它特殊字符集,這將改變下面將要輸入的字元。
pbm_deleteitem 從列表框或通用對話方塊中移去一項。
pbm_destroyclipboard 剪貼簿內容被清除。
pbm_devmodechanged WIN.INI中的一個裝置名被修改。
pbm_drawclipboard 剪貼簿內容發生改變。
pbm_drawitem 列表框或通用對話方塊的一項內容被改變。
pbm_dropfiles 當滑鼠左鍵在一個註冊為拖放檔案接受器的應用上釋放時,發出該訊息。
pbm_erasebkgnd 視窗的客戶區需要重畫。
pbm_fontchange 應用可用的字型數改變。
pbm_getdlgcode 通知訊息,說明當前使用哪種型別的鍵盤。
pbm_getfont 獲取當前啟用的字型。
pbm_getminmaxinto Windows正在檢查最小化或最大化視窗的尺寸。
pbm_gettext 從一個控制元件(如按鈕或編輯器控制元件)中複製文字到一個記憶體緩衝區。
pbm_gettextlength 用來確定一個控制元件中的字元數。
pbm_hscrollclipboard 剪貼簿的水平卷滾條被使用。
pbm_iconerasebkgnd 一個最小化視窗需要重化背景。
pbm_initdialog 一個對話方塊即將被顯示。
pbm_initmenu 一個選單即將被顯示。
pbm_initmenupopup 一個彈出式視窗即將被顯示。
pbm_keydown 鍵盤上的一個鍵被按下。
pbm_keyup 鍵盤上的一個鍵被釋放。
pbm_mdiactive 一個MDI子視窗(表單)被啟用。
pbm_mdicascade 以重疊的形式重排所有的表單。
pbm_mdicreate 建立一個表單。
pbm_mdidestroy 從MDI框架中移去一個表單。
pbm_mdigetactive 獲得當前活動的MDI表單的控制代碼。
pbm_mdiiconrange 在一個MDI框架中重排最小化表單的圖示。
pbm_mdimaximize 最大化一個MDI子表單。
pbm_mdinext 啟用下一個MDI表單(緊接著活動表單的表單)。
pbm_mdirestore 把MDI表單恢復到它原來的大小。
pbm_mdisetmenu 將一個選單與一個MDI表單聯絡起來。
pbm_mdifitle 平鋪所有的MDI表單。
pbm_measureitem 這個訊息被送給即將建立的、內有按鈕或其它控制元件的視窗。
pbm_menuchar 使用者使用了一個快捷鍵,但系統不支援該快捷鍵。
pbm_menuselect 使用者選擇了一個選單項。
pbm_mouseactivate 使用者在一個非活動視窗中點選了滑鼠。
pbm_mousemove 使用者移動了滑鼠。
pbm_ncactivate 視窗的非客戶區即將被啟用。
pbm_nccalcsize 視窗的尺寸需要重新計算。
pbm_nccreate 視窗即將建立它的非客戶區。
pbm_ncdestroy 視窗的非共享區被析構。
pbm_nchittest 每次非客戶區被移動時都發送該訊息。
pbm_nclbuttondblclk 使用者在非客戶區雙點了滑鼠左鍵。
pbm_ncpaint 非客戶需要畫出。
pbm_nextdlgctl 在對話方塊中將聚焦轉給另一個控制元件。
pbm_paint 視窗的客戶區需要被畫出。
pbm_paintclipboard 剪貼簿應用有剪貼操作,剪貼簿檢視器需重畫。
pbm_palettechanged 系統調色盤被改變。
pbm_paletteischanging 系統調色盤即將被改變。
pbm_parentnotify 通知父視窗一個子視窗即將被建立。
pbm_querydragicon 使用者要拖一個最小化視窗。
pbm_queryendsession 通知訊息,說明視窗即將被關閉。
pbm_querynewpalette 應用即將收到輸入聚焦,應該執行必要的顏色調整。
pbm_queryopen 一個最小化視窗即將被恢復。
pbm_quit 應用處理的最後一個訊息。
pbm_renderallformats 通知一個剪貼簿格式的擁有者,應用將失去所有的格式。
pbm_renderformats 通知訊息,說明放在剪貼簿中的資料應該用一種特殊格式傳送。
pbm_setcursor 通知訊息,說明滑鼠指標在一個視窗中移動。
pbm_setfont 用來在對話方塊中改變字型。
pbm_setredraw 在加一個新項之前傳送給列表框或通用對話方塊。
pbm_settext 用來改變視窗的標題或文字。
pbm_sizeclipboard 剪貼簿檢視器應用改變尺寸。
pbm_spoolerstatus 一個列印管理器任務被新增或刪除。
pbm_syschar 鍵和其它某鍵同時被按下。
pbm_syscolorchange 一種或多種系統顏色被改變。
pbm_syscommand 使用者選擇了一個系統選單命令。
pbm_sysdeadchar 通知訊息,說明一種非英語字符集被選定。
pbm_syskeydown 使用者按下某鍵的同時按下了鍵。
pbm_syskeyup 使用者釋放了組合鍵。
pbm_timechange 系統時鐘被修改。
pbm_undo 從undo緩衝區複製文字到編輯器控制元件。
pbm_vkeytoitem 當一個列表框擁有聚焦時,使用者按下了一個鍵。
pbm_vscroll 使用者點選了垂直卷滾條。
pbm_vscrollclipboard 剪貼簿檢視器的垂直卷滾條被點選。
pbm_windowposchanged 視窗位置發生改變。
pbm_windowposchanging 視窗位置即將發生改變。
pbm_wininichange WIN.INI檔案被修改。
1.window中的事件
事件名 觸發的時機
01.Activate 在視窗啟用之前觸發
02.Clicked 當用戶用滑鼠單擊視窗的空白區域(沒有控制元件的區域)時觸發
03.Close 當關閉視窗時觸發
04.CloseQuery 當清除或關閉視窗時觸發。然後檢查Message.ReturnValue的值,若為1,則視窗不能關閉
05.Deactivate 當視窗變為非活動狀態時觸發
06.DoubleClicked 當用戶雙擊視窗的空白區域時觸發
07.DragDrop 當一個可拖動的控制元件被拖動到視窗上時觸發
08.DragEnter 當一個可拖動的控制元件進入視窗時觸發
09.DragLeave 當一個可拖動的控制元件離開視窗時觸發
10.DragWithin 當一個可拖動的控制元件在視窗內部拖動時觸發
11.Hide 在視窗被隱藏時觸發
12.HotLinkAlarm 在DDE中伺服器應用已經發送了新的資料,客戶DDE應用已經接收到這些資料時觸發
13.Key 當用戶擊了一個鍵且插入點不在RichTextEdit編輯控制元件或資料視窗控制元件時觸發
14.MouseDown 當用戶在視窗的空白區域按下滑鼠左鍵時觸發
15.MouseMove 當滑鼠在視窗內移動時觸發
16.MouseUp 當用戶在視窗的空白區域釋放滑鼠左鍵時觸發
17.Open 當程式呼叫以此視窗為引數的Open函式時,此事件在該視窗開啟之後,顯示之前觸發
18.Help .........
19.Other 當一個非PowerBuilder事件的Windows資訊發生時觸發
20.RButtonDown 在視窗的空白區域單擊滑鼠右鍵時觸發
21.RemoteExec 當一個DDE客戶應用傳送了一個命令時觸發
22.RemoteHotLinkStart 當一個DDE客戶應用開始一個熱連線時觸發
23.RemoteHotLinkStop 當一個DDE客戶應用結束一個熱連線時觸發
24.RemoteRequest 當一個DDE客戶應用請求資料時觸發
25.RemoteSend 當一個DDE客戶應用已經發送了資料時觸發
26.Resize 當用戶或程式開啟或重設視窗大小時觸發
27.Show 當程式執行此視窗的show函式時,此事件在視窗顯示之前觸發
28.SystemKey 當插入點不在某個行編輯中且使用者按了ALT或ALT加其它鍵時觸發
29.Timer 在呼叫Timer函式後,經過了Timer函式指定的時間後觸發
30.ToolBarMoved 當MDI視窗的工具條移動時觸發
以上是我新建一個window是window的事件原來的順序,
下面是我自己常用的排序:
01.window開啟時發生的事件
事件名 觸發的時機
Activate 在視窗啟用之前觸發
Resize 當用戶或程式開啟或重設視窗大小時觸發
Open 當程式呼叫以此視窗為引數的Open函式時,此事件在該視窗開啟之後,顯示之前觸發
Show 當程式執行此視窗的show函式時,此事件在視窗顯示之前觸發
02.window關閉時發生的事件
Deactivate 當視窗變為非活動狀態時觸發
CloseQuery 當清除或關閉視窗時觸發。然後檢查Message.ReturnValue的值,若為1,則視窗不能關閉
Close 當關閉視窗時觸發
03.關於滑鼠擊鍵事件
Clicked 當用戶用滑鼠單擊視窗的空白區域(沒有控制元件的區域)時觸發
DoubleClicked 當用戶雙擊視窗的空白區域時觸發
MouseDown 當用戶在視窗的空白區域按下滑鼠左鍵時觸發
MouseMove 當滑鼠在視窗內移動時觸發
MouseUp 當用戶在視窗的空白區域釋放滑鼠左鍵時觸發、
RButtonDown 在視窗的空白區域單擊滑鼠右鍵時觸發
注:當按下滑鼠左鍵時,MouseDown事件觸發,當釋放滑鼠左鍵時,Clicked事件和MouseUp事件觸發
04.計時觸發
Timer 在呼叫Timer函式後,經過了Timer函式指定的時間後觸發
05.託動觸發
DragDrop 當一個可拖動的控制元件被拖動到視窗上時觸發
DragEnter 當一個可拖動的控制元件進入視窗時觸發
DragLeave 當一個可拖動的控制元件離開視窗時觸發
DragWithin 當一個可拖動的控制元件在視窗內部拖動時觸發
06.選單及選單工具欄移動是觸發
ToolBarMoved 當MDI視窗的工具條移動時觸發
07.其它不常用的(指的是我自己)
Hide 在視窗被隱藏時觸發
HotLinkAlarm 在DDE中伺服器應用已經發送了新的資料,客戶DDE應用已經接收到這些資料時觸發
RemoteExec 當一個DDE客戶應用傳送了一個命令時觸發
RemoteHotLinkStart 當一個DDE客戶應用開始一個熱連線時觸發
RemoteHotLinkStop 當一個DDE客戶應用結束一個熱連線時觸發
RemoteRequest 當一個DDE客戶應用請求資料時觸發
RemoteSend 當一個DDE客戶應用已經發送了資料時觸發
Key 當用戶擊了一個鍵且插入點不在RichTextEdit編輯控制元件或資料視窗控制元件時觸發
Help .........
Other 當一個非PowerBuilder事件的Windows資訊發生時觸發
SystemKey 當插入點不在某個行編輯中且使用者按了ALT或ALT加其它鍵時觸發
-----------------------------------------------------------------------
在window上的能應用的控制元件非常多
但是控制元件的事件有一部分是相同的
2.視窗上控制元件的公共事件
事件名 觸發的時機
Clicked 當單擊視窗或控制元件時觸發
Constructor 在視窗中的open事件發生之前觸發
Destructor 在視窗中的close事件發生之後觸發
GetFocus 在此控制元件得到焦點上時觸發
LoseFocus 在此控制元件失去焦點時觸發
DragDrop 當一個可拖動的控制元件被拖動到視窗或控制元件上時觸發
DragEnter 當一個可拖動的控制元件進入視窗或控制元件上時觸發
DragLeave 當一個可拖動的控制元件離開視窗或控制元件時觸發
DragWithin 當一個可拖動的控制元件在視窗或控制元件內部時觸發
RbuttonDown 在控制元件區域內單擊滑鼠右鍵時觸發
Other 當一個非PowerBuilder事件的Windows資訊發生時觸發
-------------------------------------------------------------------------
3.datawindow上的事件,按照順序(除開公用事件)
事件名稱 事件觸發的時機
01.ButtonClicking 在資料視窗中的按鈕物件正在被單擊時觸發
02.ButtonClicked 在資料視窗中的按鈕物件被單擊後觸發
03.DbError 當資料視窗中發生了資料庫錯誤時觸發
04.DoubleClicked 當用戶雙擊資料視窗控制元件時觸發;對於RichText風格的資料視窗,當雙擊資料視窗中的文字時觸發
05.EditChanged 當游標進入資料視窗物件中的一個欄位時觸發
06.Error 當資料視窗資料表示式或屬性表示式中發現錯誤時觸發
07.ItemChanged 當資料視窗上的區域被修改並且失去了焦點(如使用者按回車鍵、Tab鍵或箭頭鍵,或者用滑鼠選另一個區域)時觸發
08.ItemError 當一個域被修改並且失去焦點,且域不符合列上的合法性規則時觸發
09.ItemFocusChanged 當焦點改變時觸發
10.PrintStart 當資料視窗列印開始時觸發
11.PrintEnd 當資料視窗列印結束時觸發
12.PrintPage 在資料視窗的每一頁設定列印格式之前觸發
13.Resize 當用戶或程式重設視窗大小時觸發
14.RetrieveStart 當資料視窗檢索將要開始時觸發
15.RetrieveEnd 當資料視窗的檢索完成時觸發
16.RetrieveRow 在一行資料被檢索出來之後觸發
17.RowFocusChanging 當資料視窗當前行正在改變時觸發
18.RowFocusChanged 當資料視窗當前行改變之後觸發
19.ScrollHorizontal 當用戶用Tab鍵、箭頭鍵或滾動條左右滾動資料視窗控制元件時觸發
20.ScrollVertical 當用戶用Tab鍵、箭頭鍵或滾動條上下滾資料視窗控制元件時觸發
21.SqlPreview 在呼叫Retrieve、Update或Selectrow函式時,SQL語句提交到DBMS之前觸發
22.UpdateStart 恰在呼叫Update函式之後,資料視窗中的改變傳送到資料庫之前觸發
23.UpdateEnd 當所有從資料視窗到資料庫的修改完成時觸發
說一下我個人常用的幾種事件
01.資料視窗欄位輸入的時候觸發的事件
EditChanged 當游標進入資料視窗物件中的一個欄位時觸發
ItemChanged 當資料視窗上的區域被修改並且失去了焦點(如使用者按回車鍵、Tab鍵或箭頭鍵,或者用滑鼠選另一個區域)時觸發
ItemFocusChanged 當焦點改變時觸發
ItemError 當一個域被修改並且失去焦點,且域不符合列上的合法性規則時觸發
如果EditChanged,ItemChanged,ItemFocusChanged這三個事件報錯促發ItemError
如果在ItemChanged事件中設定了行為/返回程式碼1,則DataWindow控制元件拒絕接受資料且不允許焦點發生變化
02.滑鼠單雙擊資料視窗按鈕
ButtonClicking 在資料視窗中的按鈕物件正在被單擊時觸發
ButtonClicked 在資料視窗中的按鈕物件被單擊後觸發
eg:
choose case dwo.name
case 'cb_name'
//動作......
case .......
end choose
03.資料視窗檢索前後觸發的事件
RetrieveStart 當資料視窗檢索將要開始時觸發
RetrieveEnd 當資料視窗的檢索完成時觸發
RetrieveRow 在一行資料被檢索出來之後觸發
在RetrieveStart事件中設定了行為/返回程式碼2,在檢索資料之前不要重置行,也就是上次retrieve的資料會被保留下來
04.列印前後
PrintStart 當資料視窗列印開始時觸發
PrintEnd 當資料視窗列印結束時觸發
PrintPage 在資料視窗的每一頁設定列印格式之前觸發
05.其它的我自己不常用,就不多說了
------------------------------------------------------------------
4.單行編輯器控制元件、編輯掩碼控制元件、多行編輯控制元件的事件
這三個控制元件有相同的事件,都有公共事件中除了Clicked事件之外的10種事件,另外還有Modify事件
Modify事件在控制元件的文字被改變之後,使用者按了回車鍵或Tab鍵,或用滑鼠把焦點改變到另一個控制元件上時觸發
---------------------------------------------------------------------
5.超文字編輯控制元件的事件
事件名稱 觸發的時機
01.FileExists 當該控制元件的內容儲存到一個已存在的檔案時觸發
02.InputFieldSelected 當選定輸入域後雙擊或按下回車鍵時觸發
03.key 當按下一個鍵時觸發
04.Modify 當該控制元件中的內容第一次改變,但還沒有儲存時觸發
05.MouseDown 當按下滑鼠左鍵時觸發
06.MouseMove 當滑鼠在該控制元件中移動時觸發
07.MouseUp 當放開滑鼠左鍵時觸發
08.PictureSelected 當選定點陣圖後雙擊或按下回車鍵時觸發
09.PrintFooter 當列印該控制元件內容的頁尾時觸發
10.PrintHeader 當列印該控制元件內容的頁首時觸發
11.RbuttonUp 當在該控制元件中放開滑鼠右鍵時觸發
---------------------------------------------------------------------
6.滾動條事件
左右滾動條事件名稱 事件觸發時機
LineLeft 當點中了控制元件的左箭頭時觸發
LineRight 當點中了控制元件的右箭頭時觸發
PageLeft 當點中了控制元件的左部的開放空間時觸發
PageRight 當點中了控制元件的右部的開放空間時觸發
Moved 當控制元件的滾動鈕被移動時觸發
上下滾動條事件名稱 事件觸發時機
LineDown 當點中了控制元件的下箭頭時觸發
LineUp 當點中了控制元件的上箭頭時觸發
PageDown 當點中了控制元件的下部的開放空間時觸發
PageUp 當點中了控制元件的上部的開放空間時觸發
Moved 當控制元件的滾動鈕被移動時觸發
----------------------------------------------------------------------
7.列表框控制元件的事件
PowerBuilder提供了四個列表框控制元件:列表框、圖片列表框、下拉列表框和下拉圖片列表框。
它們都有公共事件中除了Clicked事件之外的10種事件。
此外,下拉列表框和下拉圖片列表框還有DoubleClicked事件、Modify事件和SelectionChanged事件。
列表框、圖片列表框還有DoubleClicked事件和SelectionChanged事件。
------------------------------------------------------------------------
8.樹狀瀏覽控制元件的事件
事件名稱 事件觸發時機
01.BeginDrag 按下滑鼠左鍵開始拖動時觸發
02.BeginLabelEdit 編輯TreeView選中的項標籤時觸發
03.BeginRightDrag 按下滑鼠右鍵開始拖動時觸發
04.DeleteItem TreeView項被刪除時觸發
05.DoubleClicked 雙擊滑鼠左鍵時觸發
06.EndLabelEdit 對TreeView的項標籤結束編輯時觸發
07.ItemCollapsed 當TreeView控制元件收縮完成時觸發
08.ItemCollapsing 當TreeView控制元件收縮開始時觸發
09.ItemExpanded 當TreeView控制元件展開後觸發
10.ItemExpanding 當TreeView控制元件展開之前觸發
11.ItemPopulate 當TreeView控制元件第一次展開時觸發
12.RightClicked 按下滑鼠右鍵時觸發
13.RightDoubleClicked 在控制元件中雙擊滑鼠右鍵時觸發
14.SelectionChanged TreeView專案被選中後觸發
15.SelectionChanging TreeView當前專案改變之前觸發
16.Sort 兩個專案為排序進行比較時觸發
-------------------------------------------------------------------------------
9.列表瀏覽控制元件的事件
事件名稱 事件觸發時機
01.BeginDrag 按下滑鼠左鍵開始拖動時觸發
02.BeginLabelEdit 編輯ListView選中的項標籤時觸發
03.BeginRightDrag 按下滑鼠右鍵開始拖動時觸發
04.ColumnClicked 在控制元件中滑鼠左鍵單擊列標題時觸發
05.DeleteAllItems 所有項被刪除時觸發
06.DeleteItem ListView項被刪除時觸發
07.DoubleClicked 雙擊滑鼠左鍵時觸發
08.EndLabelEdit 對ListView的項標籤結束編輯時觸發
09.InsertItem 為ListView插入項時觸發
10.ItemChanged 控制元件中當前專案改變後觸發
11.ItemChanging 控制元件中當前專案改變前觸發
12.key 使用者按下鍵時觸發
13.RightClicked 按下滑鼠右鍵時觸發
14.RightDoubleClicked 在控制元件中雙擊滑鼠右鍵時觸發
15.Sort 兩個專案為排序進行比較時觸發
----------------------------------------------------------------------------------
10.Tab頁控制元件的事件
事件名稱 事件觸發時機
01.DoubleClicked 雙擊滑鼠左鍵時觸發
02.Key 使用者按下鍵時觸發
03.RightClicked 按下滑鼠右鍵時觸發
04.RightDoubleClicked 在控制元件中雙擊滑鼠右鍵時觸發
05.SelectionChanging Tab控制元件當前頁改變之前觸發
06.SelectionChanged Tab控制元件當前頁改變後觸發
-----------------------------------------------------------------------------------
11.OLE控制元件的事件
事件名稱 事件觸發時機
01.Close 當OLE控制元件的伺服器關閉時觸發
02.Datachange 伺服器應用資料改變時觸發
03.DoubleClicked 在控制元件內雙擊滑鼠左鍵時觸發
04.Error 當OLE控制元件操作出現錯誤時觸發
05.ExternalException OLE伺服器自動執行處理以外的操作時觸發
06.PropertyChanged OLE控制元件改變物件後觸發
07.PropertyRequestEdit OLE控制元件改變物件時觸發
08.Rename 當伺服器中物件改名時觸發
09.Save 伺服器寫資料時觸發
10.ViewChange 伺服器進行預覽時觸發
-------------------------------------------------------------------------------------
12.選單事件
選單物件的事件比較簡單,只有兩個Clicked事件和Selected事件。
Clicked事件:在某選單上單擊滑鼠左鍵時觸發。
Selected事件:游標移入選單條時觸發。
--------------------------------------------------------------------------------------
13.使用者自定義事件
這種東東目前正在研究,太多了,慢慢來
轉資料一份
PB中自定義事件ID含義
Event ID 含義內容淺析,
單選或多選按鈕訊息(字首:pbm_bm)
pbm_bmgetcheck 單選按鈕或多選按鈕是否被選。
pbm_bmgetstate 按鈕是否加亮。
pbm_bmsetcheck 將無線按鈕或確認框的選中狀態改為未選中狀態,反之亦然。
pbm_bmsetstate 加亮或不加亮按鈕。
pbm_bmchange 改變按鈕的風格,例如,改為單選按鈕或組合框。
單選或多選按鈕通知訊息(字首:pbm_bn)
pbm_bnclicked 按鈕控制元件被點中。
pbm_bndisable 使按鈕控制元件無效。
pbm_bndoubleclicked 按鈕控制元件被雙點。
pbm_bndragdrop 一個物件被放到按鈕控制元件。
pbm_bndragenter 一個物件被拖到按鈕控制元件。
pbm_bndragleave 一個物件被拖離按鈕控制元件。
pbm_bndragover 一個物件被拖經按鈕控制元件。
pbm_bnhilite 按鈕控制元件被加亮。
pbm_bnpaint 按鈕控制元件被繪製。
pbm_bnsetfocus 按鈕控制元件獲得聚焦。
pbm_bnunhilite 按鈕控制元件不被加亮。
通用對話方塊訊息(字首:pbm_cb)
pbm_cbaddstring 將字串加到通用對話方塊。
pbm_cbdeletestring 從通用對話方塊刪除一個字串。
pbm_cbdir 加一個目錄列表到通用對話方塊。
pbm_cbfindstring 搜尋以一組字元開頭的字串。
pbm_cbfindstringexact 搜尋與所提供的字元完全匹配的字串。
pbm_cbgetcount 列表框中的項數。
pbm_cbgetcursel 當前被選項的數目。
pbm_cbgetdroppedcontrolset 列表框在螢幕上的座標位置。
pbm_cbgeteditsel 編輯器控制元件中被選字元的範圍。
pbm_cbgetextendedui 預設或擴充套件的使用者介面。
pbm_cbgetitemdata 重畫的列表框中的4位元組(32位)項。
pbm_cbgetitemheight 列表框中某一項的高度。
pbm_cbgetlbtext 列表框中的文字。
pbm_cbgetlbtextlen 列表框中文字的長度。
pbm_cbinsertstring 向列表框中增加新的字串或4位元組項。
pbm_cblimittext 限制能被輸入到列表框中的字元數。
pbm_cbresetcontent 刪除列表框中所有元素。
pbm_cbselectstring 搜尋匹配的字串並顯示。
pbm_cbsetcursel 在列表框中選擇並顯示一項。
pbm_cbseteditsel 在列表框的編輯區域中選擇一塊文字。
pbm_cbsetextendedui 設定預設或擴充套件的使用者介面。
pbm_cbsetitemdata 在列表框中設定4位元組(32位)項。
pbm_cbsetitemheight 設定列表框中項的高度。
pbm_cbshowdropdown 轉換(顯示或隱藏)列表框中拖放區域。
通用對話方塊通知訊息(字首:pbm_cbn)
pbm_cbndblclk 使用者在列表中某一項上雙點。
pbm_cbndragdrop 一個物件被放到通用對話方塊控制元件上。
pbm_cbndragenter 一個物件被拖到通用對話方塊控制元件上。
pbm_cbndragleave 一個物件被拖離通用對話方塊控制元件。
pbm_cbndragover 一個物件被拖經通用對話方塊控制元件。
pbm_cbndropdown 列表框的下放區域即將被顯示。
pbm_cbneditchange 編輯器控制元件中的文字發生變化。
pbm_cbneditupdate 列表框編輯器控制元件中的文字即將被改變。
pbm_cbnerrspace 列表框滿,不能再向其中加入項。
pbm_cbnkillfocus 通用列表框失去聚焦。
pbm_cbnselchange