請教高手
如何觸發Powerbuilder 繼承視窗事件,有一個視窗w_base,w_1繼承w_base視窗,w_2繼承w_base視窗,如何在w_2呼叫w_1的事件?謝謝
uj5u.com熱心網友回復:
默認w_base事件會自動觸發,手動呼叫用 Call super:clickeduj5u.com熱心網友回復:
w_2 和 W_1 同繼承于w_base 但是是兩個沒有直接繼承關系的物件。
w_2 要呼叫w_1 的事件可以在w_2里寫:
if isvalid(w_1) then w_1.event ue_xxxx()
uj5u.com熱心網友回復:
頂一個
uj5u.com熱心網友回復:
頂,又學到一個點1.呵呵,以后學到其他知識點后面都會點1++。
uj5u.com熱心網友回復:
還是不行呀。uj5u.com熱心網友回復:
請教高手如何觸發Powerbuilder 繼承視窗事件,有一個視窗w_base,w_base有個事件ue_refresh(w_base沒有資料視窗)
w_1繼承w_base視窗后加一個資料視窗物件dw_master,w_11再繼承w_1,
w_2繼承w_base視窗,w_22再繼承w_2,
如何在w_22呼叫w_11事件ue_refresh?
其實就是在w_22資料存盤后,w_11視窗的記錄也跟著重繪,
我用w_11.dw_master.Retrieve()不行
謝謝!!
uj5u.com熱心網友回復:
試一下: if isvalid(w_11) then w_11.event ue_refresh()uj5u.com熱心網友回復:
或者:if isvalid(w_11) then w_11.dw_master.Retrieve()uj5u.com熱心網友回復:
謝謝,問題解決了。if isvalid(w_11) then w_11.dw_master.Retrieve()
問題出現在isvalid(w_11)這個判斷上,當時沒有留意會判斷會出錯,因為w_11是打開的,也沒有做除錯,系統判斷是沒有打開w_11視窗(其實是打開的).
打開w_11視窗的方法有問題,要做一個變數來判斷
w_11 lw_11
lw_11 = f_getopenedwindow('w_11') //查找是否打開w_11視窗
If IsValid(lw_11) Then
lw_11.dw_master.Retrieve()
End If
uj5u.com熱心網友回復:
強 一個比一個強!轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/81595.html
標籤:控件與界面
上一篇:用PB如何隱藏任務欄中的視窗
下一篇:請教pb treeview問題
