2017-04-06 97 views
0

我有一個數據窗口。在那裏我有一個條目。我想用rbuttondown添加一個新條目,但它不起作用。我怎樣才能做到這一點?我寫了這個,但這是錯誤的...插入新行powerbuilder時出現問題

IF row > 0 THEN 
    //This.SetRow(row) 
    This.SelectRow(0, FALSE) 
    This.SelectRow(row, TRUE) 
    //this.ScrollToRow(row) 
    parent.TriggerEvent("ue_agregar") 
END IF 

謝謝!

回答

1

您需要使用'New'選項來定義菜單,然後該選項應該觸發insertrow方法以及您希望執行的任何其他代碼。

您顯示通過PopMenu方法是這樣的菜單(從PowerBuilder的幫助):

如果菜單與窗口 如果菜單目前與窗口相關聯,你可以簡單地調用相關PopMenu功能。

在一個命令腳本下面的語句顯示m_help作爲當前指針位置彈出菜單,假設菜單m_help已經與窗口相關:

m_help.PopMenu(PointerX(), PointerY()) 

如果菜單沒有關聯窗口 如果菜單尚未與窗口關聯,則必須先創建菜單實例,然後才能將其顯示爲彈出式菜單。

下面的語句創建菜單m_new的一個實例,然後彈出的菜單m_new在指針位置,假設m_new不包含腳本的窗口相關聯:

m_new mymenu 
mymenu = create m_new 
mymenu.PopMenu(PointerX(), PointerY()) 
1

要插入新行,你需要使用下面的函數...

ll_row = This.InsertRow(0)

該函數返回它插入的行。然後,您可以使用它滾動或選擇新行。

+0

是的,但我用rbuttondown事件。我想按右鍵,然後點擊「新建」,然後插入一個新條目。我只想看到以前的條目。 –

+0

我的問題是,當我按右鍵點擊,它出現一個菜單「複製」,「粘貼」,「剪切」選項,之後,當我按左鍵點擊它出現「新」。這是一種奇怪的行爲,我不知道爲什麼。我只想按右鍵然後點「新建」。 –