<legend id='1t24W'><style id='1t24W'><dir id='1t24W'><q id='1t24W'></q></dir></style></legend>

<small id='1t24W'></small><noframes id='1t24W'>

    1. <tfoot id='1t24W'></tfoot>
      <i id='1t24W'><tr id='1t24W'><dt id='1t24W'><q id='1t24W'><span id='1t24W'><b id='1t24W'><form id='1t24W'><ins id='1t24W'></ins><ul id='1t24W'></ul><sub id='1t24W'></sub></form><legend id='1t24W'></legend><bdo id='1t24W'><pre id='1t24W'><center id='1t24W'></center></pre></bdo></b><th id='1t24W'></th></span></q></dt></tr></i><div id='1t24W'><tfoot id='1t24W'></tfoot><dl id='1t24W'><fieldset id='1t24W'></fieldset></dl></div>

      • <bdo id='1t24W'></bdo><ul id='1t24W'></ul>
    2. 获取kivy中选中复选框的值

      时间:2023-10-09

        <i id='VN1X7'><tr id='VN1X7'><dt id='VN1X7'><q id='VN1X7'><span id='VN1X7'><b id='VN1X7'><form id='VN1X7'><ins id='VN1X7'></ins><ul id='VN1X7'></ul><sub id='VN1X7'></sub></form><legend id='VN1X7'></legend><bdo id='VN1X7'><pre id='VN1X7'><center id='VN1X7'></center></pre></bdo></b><th id='VN1X7'></th></span></q></dt></tr></i><div id='VN1X7'><tfoot id='VN1X7'></tfoot><dl id='VN1X7'><fieldset id='VN1X7'></fieldset></dl></div>

          <tbody id='VN1X7'></tbody>

          <tfoot id='VN1X7'></tfoot>
          1. <legend id='VN1X7'><style id='VN1X7'><dir id='VN1X7'><q id='VN1X7'></q></dir></style></legend>
              <bdo id='VN1X7'></bdo><ul id='VN1X7'></ul>

              <small id='VN1X7'></small><noframes id='VN1X7'>

              • 本文介绍了获取kivy中选中复选框的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                问题描述

                import sqlite3 as lite
                
                from kivy.uix.screenmanager import Screen
                from kivy.app import App
                from kivy.lang import Builder
                from kivy.core.window import Window
                
                Window.size = (600, 325)
                
                class UserGroup(Screen):
                
                    def insert_data(self, arg1,arg2):
                        print(arg1)
                        print(arg2)
                
                
                class FactUserGroup(App):
                
                    def build(self):
                        self.root = Builder.load_file('test.kv')
                        return self.root
                
                
                if __name__ == '__main__':
                    FactUserGroup().run()
                

                test.kv

                <CustomLabel@Label>:
                    text_size: self.size
                    valign: "middle"
                    padding_x: 5
                
                <SingleLineTextInput@TextInput>:
                    multiline: False
                
                <GreenButton@Button>:
                    background_color: 1, 1, 1, 1
                    size_hint_y: None
                    height: self.parent.height * 0.120
                
                UserGroup
                
                    GridLayout:
                        cols: 2
                        padding : 30,30
                        spacing: 20, 20
                        row_default_height: '30dp'
                
                        Label:
                            text: 'Male'
                            text_size: self.size
                            valign: 'middle'
                
                        CheckBox:
                            group: 'check'
                            id : chk
                
                
                        Label:
                            text: 'Female'
                            text_size: self.size
                            valign: 'middle'
                
                        CheckBox:
                            group: 'check'
                
                        CustomLabel:
                            text: 'age'
                            text_size: self.size
                            valign: 'middle'
                
                        SingleLineTextInput:
                            id: age
                
                
                        GreenButton:
                            text: 'Ok'
                            on_press: root.insert_data(chk.text,age.text)
                
                
                        GreenButton:
                            text: 'Cancel'
                            on_press: app.stop()
                

                如何获取复选框的值?我正在使用 age.text 获取年龄文本框的值,但我不知道复选框的值?
                单击确定"时,如何获取选中的复选框值并传入 root.insert_data.

                How to get value of checkbox?I am getting value of age textbox using age.text but checkbox value i don't know?
                When click on 'Ok' then How to get selected checkbox value and pass in root.insert_data.

                推荐答案

                您可以通过其 active 属性来获取复选框的选中状态,因此请尝试更改:

                You can get the checked state of a checkbox with its active property, so try change:

                GreenButton:
                    text: 'Ok'
                    on_press: root.insert_data(chk.active ,age.text)
                

                在此代码段中,chk.text 已更改为 chk.active,这对我很有效.

                In this snippet chk.text was changed to chk.active which works for me properly.

                在 https://kivy.org/docs 查看更多关于 kivy 复选框的参考资料/api-kivy.uix.checkbox.html

                希望对您有所帮助.试试看吧.

                Hope it helps. Give it a try.

                因此,为了能够获取每个复选框的属性和文本输入,您可以将 ObjectProperties 分配给小部件,并且可以将它们链接到您的 test.py文件.

                So in order to be able to get the properties of each checkbox and the text input you can assign ObjectProperties to the widgets, and you can link them to your test.py file.

                修改后的来源:

                from kivy.uix.screenmanager import Screen
                from kivy.app import App
                from kivy.lang import Builder
                from kivy.core.window import Window
                from kivy.properties import ObjectProperty
                
                Window.size = (600, 325)
                
                class UserGroup(Screen):
                    male = ObjectProperty(None)
                    female = ObjectProperty(None)
                    age = ObjectProperty(None)
                    
                    def insert_data(self):
                        if self.male.active:
                            print('Male')
                        elif self.female.active:
                            print('Female')
                        else:
                            print('No gender selected')
                        print(self.age.text)
                
                
                class FactUserGroup(App):
                
                    def build(self):
                        self.root = Builder.load_file('test.kv')
                        return self.root
                
                
                if __name__ == '__main__':
                    FactUserGroup().run()
                

                .py 文件中,您可以找到 ObjectProperty 的新导入.您还可以看到,在 UserGroup 中定义了三个新属性来与视图交互,并且在 UserGroup.insert_data 中的修改非常简单.

                In the .py file you can find a new import of ObjectProperty. Also you can see that three new properties were defined in UserGroup to interact with the view, and the modifications in UserGroup.insert_data are straightforward.

                <CustomLabel@Label>:
                    text_size: self.size
                    valign: "middle"
                    padding_x: 5
                
                <SingleLineTextInput@TextInput>:
                    multiline: False
                
                <GreenButton@Button>:
                    background_color: 1, 1, 1, 1
                    size_hint_y: None
                    height: self.parent.height * 0.120
                
                UserGroup
                
                    male: chk_male
                    female: chk_female
                    age: txt_age
                
                    GridLayout:
                        cols: 2
                        padding : 30,30
                        spacing: 20, 20
                        row_default_height: '30dp'
                
                        Label:
                            text: 'Male'
                            text_size: self.size
                            valign: 'middle'
                
                        CheckBox:
                            group: 'check'
                            id : chk_male
                
                        Label:
                            text: 'Female'
                            text_size: self.size
                            valign: 'middle'
                
                        CheckBox:
                            group: 'check'
                            id: chk_female
                
                        CustomLabel:
                            text: 'age'
                            text_size: self.size
                            valign: 'middle'
                
                        SingleLineTextInput:
                            id: txt_age
                
                
                        GreenButton:
                            text: 'Ok'
                            on_press: root.insert_data()
                
                
                        GreenButton:
                            text: 'Cancel'
                            on_press: app.stop()
                

                .kv 文件中,两个复选框的 id 和文本输入被重命名为 chk_malechk_femaletxt_age 分别.

                In the .kv file the ids of the two checkboxes and the text input are renamed to chk_male, chk_female and txt_age respectively.

                您还可以看到,对象属性链接是在 UserGroup 部分的开头定义的.

                Also you can see that the object property links are defined at the beginning of the UserGroup section.

                希望它有意义并符合您的要求.

                Hope it makes sense and match your requirements.

                这篇关于获取kivy中选中复选框的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                        <tbody id='26Mcc'></tbody>

                        <bdo id='26Mcc'></bdo><ul id='26Mcc'></ul>
                        <i id='26Mcc'><tr id='26Mcc'><dt id='26Mcc'><q id='26Mcc'><span id='26Mcc'><b id='26Mcc'><form id='26Mcc'><ins id='26Mcc'></ins><ul id='26Mcc'></ul><sub id='26Mcc'></sub></form><legend id='26Mcc'></legend><bdo id='26Mcc'><pre id='26Mcc'><center id='26Mcc'></center></pre></bdo></b><th id='26Mcc'></th></span></q></dt></tr></i><div id='26Mcc'><tfoot id='26Mcc'></tfoot><dl id='26Mcc'><fieldset id='26Mcc'></fieldset></dl></div>
                        <legend id='26Mcc'><style id='26Mcc'><dir id='26Mcc'><q id='26Mcc'></q></dir></style></legend>

                      • <small id='26Mcc'></small><noframes id='26Mcc'>

                        <tfoot id='26Mcc'></tfoot>