【问题标题】:Kivy Textinput not detecting physical keyboard on WindowsKivy Textinput 未在 Windows 上检测到物理键盘
【发布时间】:2021-06-08 18:30:48
【问题描述】:

我正在尝试使用带有 Textinput 的 Kivy 和 Python 3.7 设计一个简单的应用程序。我设法使用textinput.keyboard_mode="managed" 隐藏了虚拟键盘。但是,在物理键盘上键入时,尽管我已将键盘设置为系统 Config.set('kivy', 'keyboard_mode', 'system'),但焦点文本框中没有显示任何文本。程序如下

from kivymd.app import MDApp
from kivymd.uix.screen import Screen
from kivymd.uix.list import OneLineListItem, MDList
from kivymd.uix.list import OneLineIconListItem, IconLeftWidget
from kivy.uix.scrollview import ScrollView
from kivymd.uix.toolbar import MDToolbar
from kivy.uix.boxlayout import BoxLayout 
from kivy.uix.textinput import TextInput
from kivy.core.window import Window
from kivy.config import Config
Window.size = (1920, 1080)
Window.fullscreen = True
Config.set('kivy', 'keyboard_mode', 'system')

class StudentApp(MDApp):

    def build(self):
        screen = Screen()
        superBox = BoxLayout(orientation ='vertical')
        toolbar=MDToolbar(title="Student Call List", anchor_title= "center" )
        toolbar.md_bg_color=[0.5, 0, 1, 1]
        superBox.add_widget(toolbar)
        # Creating a Simple List
        textfield=TextInput()
        textfield.keyboard_mode="managed"
        textfield.use_handles=True
        superBox.add_widget(textfield)
        scroll = ScrollView()
        list_view = MDList()
        
        for i in range(5):
            icons = IconLeftWidget(icon="android")
            items = OneLineIconListItem(text=str(i) + ' item')
            items.add_widget(icons)
            list_view.add_widget(items)
            
        scroll.add_widget(list_view)
        # End List
        superBox.add_widget(scroll)
        screen.add_widget(superBox)
        return screen
    
  
StudentApp().run()

【问题讨论】:

    标签: python kivy


    【解决方案1】:

    keyboard_mode="managed" 需要手动设置键盘可见性,或者调用辅助函数show_keyboard()hide_keyboard()

    您可以删除此行 - textfield.keyboard_mode = "managed" 或在其后添加 textfield.show_keyboard()https://kivy.org/doc/stable/api-kivy.uix.behaviors.html#kivy.uix.behaviors.FocusBehavior.keyboard_mode

    【讨论】:

      猜你喜欢
      • 2017-01-22
      • 1970-01-01
      • 1970-01-01
      • 2013-04-18
      • 1970-01-01
      • 2015-07-02
      • 1970-01-01
      • 1970-01-01
      • 2019-09-15
      相关资源
      最近更新 更多