[英]Getting button tooltip in method
在我的 webdynpro 中,當我單擊按鈕時,我不想獲取按鈕的工具提示並將其用作彈出窗口的標題。
method WDDOMODIFYVIEW .
"write view to attribute so it can be accessed from other methods.
wd_this->DETAILVIEW = view.
endmethod.
.
method ONACTIONOPENDIALOG .
data lv_title type string.
data lv_buttonID type string.
data lv_button type ref to if_wd_view_element.
buttonID = wdevent->get_string( name = 'ID' ).
button = wd_this->detailview->get_element( lv_buttonid ).
call method cl_fitv_wd_util=>UI_GET_PROPERTY(
exporting
io_view = wd_this->detailview
io_view_element = lv_button
iv_id = buttonid
iv_property_name = 'TOOLTIP'
importing
ev_value = lv_title ).
wd_this->dopopup( title = lv_title ).
endmethod.
UI_GET_PROPERTY 方法無法獲取工具提示。 可能是因為它試圖在 if_wd_view_element 而不是 cl_wd_button 上調用方法 GET_TOOLTIP。 這是該方法中的錯誤嗎? 有沒有辦法將 if_wd_view_element 轉換為 cl_wd_button?
對 if_wd_view_element 的引用可以向下轉換為對 cl_wd_uielement 的引用。 向下轉換為 cl_wd_button 也適用於按鈕,但不適用於工具欄按鈕。 cl_wd_uielement 可能適用於所有 uielement。
method ONACTIONOPENDIALOG .
data lv_title type string.
data lv_buttonID type string.
data lv_button type ref to if_wd_view_element.
data lv_realbutton type ref to cl_wd_uielement.
lv_buttonID = wdevent->get_string( name = 'ID' ).
lv_button = wd_this->detailview->get_element( lv_buttonid ).
"downcast view_element to uielement
lv_realbutton ?= lv_button.
lv_title = lv_realbutton->get_tooltip( ).
selectbuttonrow( exporting actionevent = wdevent ).
wd_this->dopopup( title = lv_title ).
endmethod.
我在這里找到了一篇關於向下轉型的文章: https : //help.sap.com/doc/abapdocu_750_index_htm/7.50/en-US/abapmove_cast.htm
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.