觸控螢幕和滑鼠作為單獨的輸入?

觸控螢幕和滑鼠作為單獨的輸入?

有人可以給我一個關於如何實現這一目標的良好參考,或者只是告訴我它是如何完成的嗎?谷歌在這裡並沒有真正幫助我,因為它總是試圖給我有關觸控板的建議:/

答案1

只要您的觸控螢幕被偵測為無聊的輸入設備,您就可以使用 來執行此操作xinput。該工具可讓您定義新的主指標(類似於滑鼠指標的虛擬指標)並與其分離和附加從指標(實際的硬體裝置)。

所以你需要做的就是

  1. 建立一個新的主指針
  2. 將您的觸控螢幕重新連接到這個新的主指針

其完成方式與此類似:

  1. 建立新的主指標:

    $ xinput create-master touchy
    

    這將創建一個新的主鍵盤/指針對,其中鍵盤稱為“觸控鍵盤”,指針稱為“觸控指針”:

    $ xinput
       ⎡ Virtual core pointer                          id=2    [master pointer  (3)]
       ⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
       ⎜   ↳ SynPS/2 Synaptics TouchPad                id=10   [slave  pointer  (2)]
       ⎜   ↳ TPPS/2 IBM TrackPoint                     id=11   [slave  pointer  (2)]
       ⎜   ↳ My Cool™ Touchscreen                      id=14   [slave  pointer  (2)]
       ⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
           ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
           ↳ Power Button                              id=6    [slave  keyboard (3)]
           ↳ Video Bus                                 id=7    [slave  keyboard (3)]
           ↳ Sleep Button                              id=8    [slave  keyboard (3)]
           ↳ AT Translated Set 2 keyboard              id=9    [slave  keyboard (3)]
           ↳ ThinkPad Extra Buttons                    id=12   [slave  keyboard (3)]
           ↳ HID 046a:0011                             id=13   [slave  keyboard (3)]
       ⎡ touchy pointer                                id=15   [master pointer  (16)]
       ⎜   ↳ touchy XTEST pointer                      id=17   [slave  pointer  (15)]
       ⎣ touchy keyboard                               id=16   [master keyboard (15)]
           ↳ touchy XTEST keyboard                     id=18   [slave  keyboard (16)]
    
  2. 將觸控螢幕從指針重新連接到新的主指針

    在此範例中,我假設「My Cool™ Touchscreen」是要使用的裝置 ( id=14):

    $ xinput reattach 14 15
    

    這將導致以下結果:

    $ xinput
      ⎡ Virtual core pointer                          id=2    [master pointer  (3)]
      ⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
      ⎜   ↳ SynPS/2 Synaptics TouchPad                id=10   [slave  pointer  (2)]
      ⎜   ↳ TPPS/2 IBM TrackPoint                     id=11   [slave  pointer  (15)]
      ⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
          ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
          ↳ Power Button                              id=6    [slave  keyboard (3)]
          ↳ Video Bus                                 id=7    [slave  keyboard (3)]
          ↳ Sleep Button                              id=8    [slave  keyboard (3)]
          ↳ AT Translated Set 2 keyboard              id=9    [slave  keyboard (3)]
          ↳ ThinkPad Extra Buttons                    id=12   [slave  keyboard (3)]
          ↳ HID 046a:0011                             id=13   [slave  keyboard (3)]
      ⎡ touchy pointer                                id=15   [master pointer  (16)]
      ⎜   ↳ My Cool™ Touchscreen                      id=14   [slave  pointer  (2)]
      ⎜   ↳ touchy XTEST pointer                      id=17   [slave  pointer  (15)]
      ⎣ touchy keyboard                               id=16   [master keyboard (15)]
          ↳ touchy XTEST keyboard                     id=18   [slave  keyboard (16)]
    

現在您的觸控螢幕應該像一個單獨的指點設備一樣工作。

編輯:要擺脫第二個滑鼠指標(這對於觸控螢幕來說是相當多餘的),您可以使用工具,它利用 XInput2 擴充功能來單獨更改指標。

相關內容