天天看點

QML鍵盤事件之Enter鍵無響應解決方法

有一個項目用到了條碼槍,需要用到Enter鍵作為換行符來擷取完整的字段,一開始用的是如下的做法:

 Keys.onPressed: {

                        switch(event.key)

                        {

                          ···

                         case Qt.Key_Enter:

                             text =  _taskChoosePopup.order_number;   //字段顯示出來

                          break;

                       }

                      }

結果發現輸入Enter無法進入Enter鍵的處理函數。

通過找資料發現,由于Qt預設的鍵盤中有兩個Enter鍵,大鍵盤Enter鍵(就是Backspace鍵下方的Enter鍵)用的是Qt.Key_Return代表,把上述程式中的Qt.Key_Enter替換掉,果然發現可行了。

另外Qt.Key_Enter代表的是小鍵盤的Enter鍵。

另外,可以直接用以下函數觸發Enter鍵

                    Keys.onEnterPressed:

                    {

                        dosomething();

                    }

                    Keys.onReturnPressed:

                    {

                        dosomething();

                    }鍵盤事件

繼續閱讀