AWTK 控制項焦點相關問題

2021-09-29 19:20:26 字數 1157 閱讀 4706

除了 edit 控制項外,其它控制項如果需要焦點停留功能,可以指定控制項的 focusable 屬性為 true 來實現。

在 xml 中,可以這樣指定:

在 c **中,可以這樣指定:

widget_set_prop_bool(widget, widget_prop_focusable, true);
如果指定了 fucusable 屬性為 true,請確保控制項的 style 中定義了 focused 狀態的資料,否則會因為 focused 狀態沒有 style 資料而無法顯示。如:

#ifndef tk_key_move_focus_next

#define tk_key_move_focus_next "tab"

#endif /*tk_key_move_focus_next*/

在這個例子中,方向鍵 up 移動到前乙個焦點控制項,方向鍵 down 移動到下乙個焦點控制項。

在一些特殊的硬體裝置上,沒有觸控螢幕,只有上、下、左、右、確定和取消六個鍵。

為了快速切換焦點,awtk 支援通過左右鍵切換水平焦點,通過上下鍵切換垂直焦點。可以通過視窗的下列屬性來設定:

示例:

在這個例子中,方向鍵 up 移動到上方的焦點控制項,方向鍵 down 移動到下方的焦點控制項。

方向鍵 left 移動到左方的焦點控制項,方向鍵 right 移動到右方的焦點控制項。

軟鍵盤本身不能得到焦點,為了收到按鍵訊息,需要指定屬性 grab_keys=「true」。

可以指定控制項的 focused 屬性為 true 將控制項設定為初始焦點控制項。

在 xml 中,可以這樣指定:

在 c 中,可以這樣指定:

widget_set_prop_bool(widget, widget_prop_focused, true);

EXT 關於控制項焦點問題

1 某個控制項獲取焦點 ext.extend wxerp.baseinfo.customervalue.editwindow,ext.window,2 tab鍵切換 控制項按照順序獲取焦點 給控制項加屬性 tabindex 5 如果有五個控制項 這個表示第五次得到焦點 3 檢視頁面取消按鈕初始化得到...

EXT 關於控制項焦點問題

1 某個控制項獲取焦點 ext.extend wxerp.baseinfo.customervalue.editwindow,ext.window,2 tab鍵切換 控制項按照順序獲取焦點 給控制項加屬性 tabindex 5 如果有五個控制項 這個表示第五次得到焦點 3 檢視頁面取消按鈕初始化得到...

控制項失去焦點與獲得焦點

1.失去焦點 讓控制項失去焦點的方法,就是給該控制項傳送乙個wm killfocus的訊息。可以通過下面三種方式實現 1使用cwnd類的postmessage getdlgitem 控制項id號 postmessage wm killfocus,0,0 2獲取控制項的控制代碼,然後通過控制代碼直接給...